Tutto ha dei limiti... ma sono limiti fisici. insomma, finchè c'è memoria va. 300kb fanno il solletico a qualunque server moderno.Originariamente inviato da azote
Stufo di provare, ho deciso quindi di attuare la strada consigliatami da }gu|do[z]{®©, anche se non so se con file "pesanti ma non troppo" (es. 300k) possa dare problemi..
Quante variabili tiene al max un array? Esiste un massimo?
E'chiaro che poi tuto si può ottimizzare..ma in questo caso credo basti eliminare l'array dopo aver preso il record random... ^_^
tranquillissimo..Dovrò eseguire la funzione più volte e su file diversi con cicli ripetuti.. (es. avrò un minimo di 4 files di testo: nomi.txt, cognomi.txt, domini.txt, estensioni.txt che andranno a comporre ogni indirizzo). Che problemi possono sorgere?
Cmq ecco il codice che ho creato
Cosa ve ne pare?codice:$filelocation= "nomi.txt"; $file = fopen($filelocation,"r"); $content = fread($file, filesize($filelocation)); $array = explode(" ", $content); fclose($file); $totwords = count($array); $numword = mt_rand(0,$totwords-1); $randword = $array["$numword"]; echo "$randword";
Consigli?
Grazie mille ancora e buonanotte!
Dav
a parte che esiste array_rand()... ma siamo lì
se vuoi dopo questo:
$randword = $array["$numword"];
puoi svuotare l'array se hai molta roba da fare dopo e non vuoi che quella memoria sia occupata inutilmente per tutto il tempo.
Oltretuto con questo sistema ti leggi tutto il file in una volta (e sequenzialmente) e buonanotte... lavotando invece sul file aperto con diversi accessi non sequenziali finisci a risparmiare memoria ma a fare anche molti più accessi a disco probabilmente... quindi siam sempre lì.
![]()


Rispondi quotando