Autor Zpráva
jan99
Profil *
Ahoj, chci vybrat nahodnou hodnotu o 10ti znacich a pouzivam k tomu mt_rand(). Ale pokud to testuju refreshovanim prohlizece tak obcas vyskoci hodnota o 8mi mistech.

Jak je to mozne?

var_dump(mt_rand(1000000000,4294967295));
ShiraNai7
Profil
Maximalni mozna nahodna hodnota byva presne 2147483647 .. viz vystup funkce mt_getrandmax().

Na ziskani nahodneho cisla o urcitem poctu cifer doporucuji si udelat vlastni funkci, napriklad:

function randomNumber($digits)
{
  if($digits < 0) return;
  for($i = 0, $out = ''; $i < $digits; ++$i) {
    $out .= chr(mt_rand(48, 57));
  }
  return $out;
}

echo randomNumber(10); // vypise napr 1961849542

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: