Wygeneruj liczbę losową w PHP

Wygeneruj liczbę losową w PHP
Generowanie innej liczby za każdym razem poprzez wykonywanie skryptu nazywane jest liczbą losową. Liczba losowa może być używana do różnych celów programowania, takich jak generowanie losowej nazwy pliku, losowe hasło i liczba losowa, która nie jest przewidywalna dla innych. PHP ma wiele wbudowanych funkcji do generowania liczb losowych na różne sposoby. skraj(), Random_int (), I mt_rand () Funkcje są używane w PHP do generowania liczb losowych. W jaki sposób te funkcje są używane do generowania liczb losowych, są wyjaśnione w tym samouczku.

Użycie rand ()

Ta funkcja służy do generowania losowego numeru liczb całkowitych. Składnia tej funkcji podano poniżej.

Składnia:

int Rand ()

Lub

int rand (int min, int max)

Zwraca duży losowy numer liczby całkowitej, jeśli w funkcji nie jest używany parametr. Jeśli w tej funkcji znajdują się dwie wartości argumentów, zwróci losową liczbę całkowitymi na podstawie wartości argumentów. Zastosowanie tej funkcji pokazano poniżej.

Przykład 1: różne zastosowania funkcji rand ()

Poniższy przykład pokazuje trzy różne zastosowania skraj() funkcja wygenerowania liczby losowej. Na początku skraj() Funkcja jest nazywana dwa razy bez żadnego argumentu, aby pokazać, w jaki sposób losowe liczby są generowane domyślnie. Następnie nazywa się to dwa razy z dwoma różnymi wartościami minimum i maksymalnymi. W końcu nazywa się to dwa razy z operatorem bitowcowym.

// użycie funkcji rand () bez argumentu
Echo "

Liczba losowa za pomocą rand () bez argumentu:

";
Echo "

Pierwsza liczba losowa: ". skraj(). "

";
Echo "

Druga liczba losowa: ". skraj(). "

";
// użycie funkcji rand () z argumentami
Echo "

Liczba losowa za pomocą rand () poprzez definiowanie argumentów:

";
Echo "

Pierwsza liczba losowa w zakresie [10-100]: ". Rand (10 100). "

";
Echo "

Druga liczba losowa w zakresie [100-500]: ". Rand (100 500). "

";
// Użyj funkcji rand () z operatorem bitowym
Echo "

Liczba losowa za pomocą Rand () za pomocą operatora bitowego:

";
echo „Pierwsza liczba losowa za pomocą operatora bitowskiego (&) z 10:”;
Echo Rand () i 10;
Echo "
Druga liczba losowa za pomocą operatora bitowego (i) z 50: ";
Echo Rand () i 50;
?>

Wyjście:

Podobne wyjście pojawi się po uruchomieniu skryptu z serwera. Pierwsze wyjście pokazuje dwie różne duże liczby. W drugim wyjściu pierwsza liczba losowa została wygenerowana w zakresie od 10 do 100, a druga liczba losowa została wygenerowana w zakresie od 100 do 500. W trzeciej wyjściu pierwsza liczba losowa została wygenerowana w zakresie od 0 do 10, a druga liczba losowa została wygenerowana w zakresie od 0 do 50.

Użycie losowego_int ()

Ta funkcja służy do generowania pseudocyjnej liczby losowej kryptograficznie. Funkcja połączenia systemowego GetRandom (2) jest używany na Ubuntu do wygenerowania kryptograficznej liczby losowej. Ta funkcja jest bezpieczniejsza niż skraj() funkcja, ponieważ wygenerowana liczba nie jest przewidywalna. Ale Random_int () jest wolniejszy niż skraj() funkcjonować. Składnia tej funkcji podano poniżej.

Składnia:

int Random_int (int min, int max)

W funkcji używane są dwa argumenty do ustawienia zakresu generowania kryptograficznej liczby losowej. Pierwszy argument służy do ustalenia najniższej wartości, a drugi argument służy do ustawienia najwyższej wartości liczby. Zastosowanie tej funkcji pokazano poniżej.

Przykład 2: Różne zastosowania funkcji Random_int ()

Poniższy przykład pokazuje użycie Random_int () funkcja wygenerowania liczby losowej, dostarczając minimalne i maksymalne wartości. Wartości te mogą być liczbą całkowitą lub płynącą, ale minimum nie może być większe niż wartość maksymalna. Na początku Random_int () funkcja, dodatnie liczby liczb całkowitych są używane jako wartości minimalne i maksymalne. W sekundę Random_int () Funkcja, ujemna liczba całkowita jest używana jako minimum, a dodatnia liczba liczb całkowitych jest używana jako wartość maksymalna. W trzecim Random_int () funkcja, liczby pływające są używane jako wartości minimalne i maksymalne.

// Ustaw pozytywne wartości minuty i dodatnie maksymalne
Echo "

Wyjście Random_int () z dodatnimi wartościami Min i Maks " .Random_int (1000, 10000). "

";
// Ustaw wartości ujemne min i dodatnie maksymalne
Echo "

Dane wyjściowe Random_int () z ujemnymi minimalnymi wartościami Min i dodatnimi wartościami: " .Random_int (-500, 10000). "

";
// Ustaw wartości ułamkowe Min i Maks
Echo "

Wyjście landom_int () z wartościami ułamkowymi Min i Maks " .Random_int (0.67, 54.89). "

";
?>

Wyjście:
Poniższe podobne dane wyjściowe pojawi się po uruchomieniu skryptu z serwera.

Użycie mt_rand ()

Ta funkcja służy do generowania wysokiej jakości pseudo-lampowych liczb za pomocą Mersenne Twister generator. Działa szybciej niż skraj() funkcjonować. Składnia tej funkcji podano poniżej.

Składnia:

int mt_rand (int min, int max)

Jak skraj() funkcja, może wymagać dwóch argumentów, aby ustawić wartości maksymalne i min, a tę funkcję można również użyć bez żadnych argumentów. Zastosowanie tej funkcji pokazano poniżej.

Przykład 3: Różne zastosowania funkcji mt_rand ()

Poniższy przykład pokazuje użycie mt_rand () funkcja z argumentami i bez. Pierwszy mt_rand () Funkcja jest wywoływana bez żadnego argumentu, który wygeneruje duży numer liczb całkowitych. Drugi mt_rand () funkcja jest wywoływana z minimalną i maksymalną wartością, która wygeneruje liczbę w określonym zakresie.

// użycie funkcji mt_rand () bez argumentu
Echo "

Wygenerowany liczba losowa za pomocą MT_RAND () bez argumentu:

";
Echo "

". mt_rand (). "

";
// użycie funkcji mt_rand () z argumentami
Echo "

Wygenerowany liczba losowa za pomocą MT_RAND () poprzez definiowanie argumentów:

";
Echo "

". MT_RAND (15 150). "

";
?>

Wyjście:
Poniższe podobne wyjście wygeneruje po uruchomieniu skryptu z serwera. Pierwsze wyjście pokazuje, że duża liczba całkowita została wygenerowana, gdy nie jest używany argument w mt_rand () funkcjonować. Druga wyjście pokazuje, że wygenerowano liczbę w zakresie od 15 do 150.

Wniosek

W tym samouczku wyjaśniono trzy różne sposoby generowania losowej liczby w PHP. Lepiej jest użyć Random_int () funkcja, gdy bezpieczeństwo jest ważne, ale lepiej jest użyć mt_rand () funkcja, gdy jest to wymagane do szybszego generowania liczby losowej. skraj() Funkcję może być używana do generowania prostej liczby losowej.