Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Satunnainen rivi

chiqu [29.12.2004 12:05:11]

#

Onko helppoa tapaa ?

Tekstitiedosto.txt
Jukka
Pekka
Matti
Juhani

ja pitäisi saada pätkä, joka arpoisi nuista aina randomilla yhden.

Metabolix [29.12.2004 12:09:42]

#

Ja kieli oli PHP?

<?php
$f = file('Tekstitiedosto.txt'); // Luetaan tiedosto. Jokainen rivi on yksi taulukon alkio.
$a = rand() % count($f);         // Arvotaan yksi taulukon alkioista (alkavat 0:sta)
echo "$a. rivi: " $f[$a];        // "1. rivi: (Jokuteksti)"
?>

Funktio rand palauttaa satunnaisluvun. Sen voi varmaankin alustaa srand-funktiolla, esim. srand(time());

Antti Laaksonen [29.12.2004 12:32:34]

#

Ehkä helpointa on käyttää array_rand-funktiota, joka palauttaa satunnaisen taulukon indeksin.

<?php
$nimet = file("nimet.txt");
echo $nimet[array_rand($nimet)];
?>

PHP:n versiosta 4.2.0 alkaen srand-funktion käyttö ei ole tarpeen.

wwwapu [29.12.2004 18:01:47]

#

Ja jos käyttää rand() kannattaa tutustua myös funktioon mt_rand() Siinä olisi kai hieman nopeutta. Joku ihmeen Twister siinä pyörii...

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta