hannes: Random-Funktion

Beitrag lesen

Hallo,

gegeben sei eine Funktion:
function Zufall()
{
 return mt_rand(1, 10);
}

Diese werde zweimal in einem "Programm" aufgerufen und sollTe zwei verschiedene Zufallswerte zurückgeben. Dies tut sie leider nicht.

Also versuchte ich es mit einem globalen array $BenutztZufall um dort bereits verwendete Zufallszahlen zu "speichern". Meine Funtion lautete nun:

function Zufall()
{
 global $BenutztZufall;
 if (count($BenutztZufall) == 10) // Es wurden also bereits alle Zahlen genau n-mal zurückgegeben
  $BenutztZufall = array();
 $neuerZufall = mt_rand(1, 10);
 while (in_array($neuerZufall, $BenutztZufall))
  $neuerZufall = mt_rand(1, 10);
 $BenutztZufall[] = $neuerZufall;
 return $neuerZufall;
}

Dies funktioniert jedoch auch nicht und ich erhalte weiterhin immer dieselbe Zufallszahl. Jemand einen Rat?

Gruß