Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Funkcja
Forum PHP.pl > Forum > Przedszkole
gosciu99
Czy jest w php funkcja na podanie losowej liczby z przedziału np. powiedzmy od 1 do 23 questionmark.gif
Mike122
  1. <?php
  2. $rand = rand(1,23);
  3. print $rand;
  4. ?>


(1,23) tam ustawiasz zakres liczny
em1X
bezpieczniej:

  1. <?php
  2.  
  3. mt_srand((double)(microtime() ^ posix_getpid()));
  4.  
  5. $num = mt_rand(1,23);
  6.  
  7. ?>
gosciu99
Może mi ktoś wytłumaczyć dlaczego ta druga propozycja jest bezpieczniejsza?
erix
Bo korzysta z generatora liczb wister' target='_blank.

Mozesz podwyzszyc bezpieczenstwo dajac jako ziarno liczbe pierwsza.
mike
Przykład ~em1X jest ok. Poza jednym ale:
mt_rand()
Cytat
Notatka: Od php w wersji 4.2.0 nie ma potrzeby inicjalizować generatora liczb losowych funkcją srand() lub mt_srand(), ponieważ dzieje się to automatycznie.

Więc wystarczy:
  1. <?php
  2.  
  3. $num = mt_rand(1,23);
  4.  
  5. ?>
em1X
mike_mech: tym bardziej moj przyklad jest bardziej bezpieczny: seed w moim przypadku ma bardziej losowy charakter i jest trudniejszy do przewidzenia.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.