Funkcja PHP Rand()

Kobieta pracująca w biurze

Zhang Bo/Getty Images





Funkcja rand() jest używana w PHP aby wygenerować losową liczbę całkowitą. Funkcji PHP rand() można również użyć do wygeneruj losową liczbę w określonym zakresie, np. liczba od 10 do 30.

Jeśli nie określono maksymalnego limitu podczas korzystania z funkcji PHP rand(), największa liczba całkowita, która może zostać zwrócona, jest określana przez funkcję getrandmax(), która różni się w zależności od systemu operacyjnego.



Na przykład w Okna , największa liczba, jaką można wygenerować, to 32768. Można jednak ustawić określony zakres, aby uwzględnić wyższe liczby.

Składnia Rand() i przykłady

Poprawna składnia użycia funkcji PHP rand jest następująca:



|_+_|

lub

|_+_|

Używając składni opisanej powyżej, możemy zrobić trzy przykłady funkcji rand() w PHP:

|_+_|

Jak widać w tych przykładach, pierwsza funkcja rand generuje losową liczbę od 10 do 30, druga od 1 do 1 miliona, a trzecia bez zdefiniowanej maksymalnej lub minimalnej liczby.

Oto kilka możliwych wyników:



|_+_|

Obawy dotyczące bezpieczeństwa przy użyciu funkcji Rand()

Liczby losowe generowane przez tę funkcję nie są wartościami kryptograficznie bezpiecznymi i nie powinny być używane ze względów kryptograficznych. Jeśli potrzebujesz bezpiecznych wartości, użyj innych funkcji losowych, takich jak random_int(), openssl_random_pseudo_bytes() lub random_bytes()

Notatka: Począwszy od PHP 7.1.0, funkcja PHP rand() jest aliasem funkcji mt_rand(). Mówi się, że funkcja mt_rand() jest cztery razy szybsza i daje lepszą losową wartość. Jednak generowane przez niego liczby nie są bezpieczne kryptograficznie. Podręcznik PHP zaleca używanie funkcji random_bytes() dla kryptograficznie bezpiecznych liczb całkowitych.