Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/06/2010, 11:31
Avatar de uriurifrank
uriurifrank
 
Fecha de Ingreso: abril-2005
Mensajes: 114
Antigüedad: 19 años
Puntos: 1
Otra manera para elegir una linea aleatoria ?

Estuve pensando como conseguir que de un archivo de texto con un monton de palabras, me eligiera una palabra aleatoriamente, y esto fue lo que se me ocurrio:
Código PHP:
<?
//Lectura de archivo.
$miarchivo "diccionario.txt";
$abrir_archivo fopen ($miarchivo,"r") or die ("No se puede abrir el archivo");
$cont 0;
while (!
feof($abrir_archivo))
{
 
$linea fgets($abrir_archivo,1024);
 
//cuenta las lineas
 
$cont++;
}
fclose($abrir_archivo);

//elige el numero de linea
$elegido rand(0,$cont);

//busca la linea elegida
$abrir_archivo fopen ($miarchivo,"r") or die ("No se puede abrir el archivo");
$cont2 0;
while (
$cont2 <= $elegido 1){
$palabraelegida fgets($abrir_archivo,1024);
$cont++;
}
// $palabraelegida";
fclose($abrir_archivo);
echo 
"El archivo abierto tiene $cont lineas y ";
echo 
"la palabra elegida es $palabraelegida";
?>
Pero el problema que tengo es que el archivo con todas las palabras tiene casi 1 millon de lineas xD y cada vez que ejecuto este código consume un montón de CPU al ordenador O_o Existe alguna manera más de conseguir este mismo efecto sin que consuma tanto ?