phpbar.de logo

Mailinglisten-Archive

[php] mt_rand() funzt irgendwie net!

[php] mt_rand() funzt irgendwie net!

Hartmut Holzgraefe hartmut_(at)_six.de
Wed, 10 Jan 2001 19:48:57 +0100


Dominik von Werdt wrote:
> danke, so gehts. aber warum muss ich den erst initialisieren?

"Das ist nunmal so!" :)

Ernsthaft: rand() und mt_rand() liefern nur Pseudo-Zufallsfolgen.
D.h. wenn ich mit demselben Initialisierungswert starte, dann erhalte
ich auch immer dieselbe Ergebnisfolge.

Datmit kann ich sicherstellen, das ich beim Test/Debugging auf hier 
immer mit denselben Datenfolgen testen kann. 

Wenn ich dagegen 'echten' Zufall haben möchte, dann starte ich nicht
mit einem festgelegten Wert sondern mit einem bei einmaligem Zugriff
ebenso zufälligen Wert wie z.B. der aktuellen Millisekunde. 

Natürlich könnte man jetzt vorschlagen, daß mt_rand() das ja beim
ersten Aufruf automatisch machen könnte, dann müste es sich aber
auch merken, das es das schon getan hat (overhead, nicht thread-safe)
und deshalb sind die Dinge halt so wie sie sind (und nicht nur in
PHP)...

-- 
Hartmut Holzgraefe  hartmut_(at)_six.de  http://www.six.de  +49-711-99091-77


php::bar PHP Wiki   -   Listenarchive