rand() gibt immer selbe zahl

cater

Erfahrenes Mitglied
Hi,

bei mir gibt die rand() Funktion immer den selben, nämlich den Untergrenze-Wert an (hier 1). Eigentlich sollte dies doch nicht passieren?!

PHP:
<?
$random = rand(1,5);
echo "$random";
?>

Liegt das vielleicht an meinem Apache oder der PHP Version? Sorry, aber ich hab das Board durchsucht und bei allen anderen funktionierts anscheinend normal.

Carlo
 
Du musst den Zufallsgenerator zuerst mit einer Startzahl initialisieren. Ich klau da mal ganz dreist den Code vom PHP-Manual:
PHP:
// seed with microseconds
function make_seed() {
    list($usec, $sec) = explode(' ', microtime());
    return (float) $sec + ((float) $usec * 100000);
}
mt_srand(make_seed());
$randval = mt_rand();
Außerdem sollte man die mt_-Funktionen verwenden, da diese auf einen besseren Zufallsalgorithmus basieren.
 
Zurück