php

Wygeneruj losową liczbę w PHP

Wygeneruj losową liczbę w PHP
Generowanie za każdym razem innej liczby przez wykonanie skryptu nazywa się liczbą losową. Liczba losowa może być używana do różnych celów w programowaniu, takich jak generowanie losowej nazwy pliku, losowego hasła i losowej liczby, 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 tym samouczku wyjaśniono, w jaki sposób te funkcje są używane do generowania liczb losowych.

Użycie rand()

Ta funkcja służy do generowania losowej liczby całkowitej. Składnia tej funkcji jest podana poniżej.

Składnia:

int rand()

lub

int rand(int min, int max)

Zwraca dużą losową liczbę całkowitą, jeśli w funkcji nie jest używany żaden parametr. Jeśli w tej funkcji podane są dwie wartości argumentów, zwróci losową liczbę całkowitą na podstawie wartości argumentów. Korzystanie z tej funkcji pokazano poniżej.

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

Poniższy przykład pokazuje trzy różne zastosowania skraj() funkcja generowania liczby losowej. Na początku skraj() funkcja jest wywoływana dwa razy bez żadnego argumentu, aby pokazać, jak domyślnie generowane są liczby losowe. Następnie jest wywoływany dwa razy z dwiema różnymi wartościami minimalnymi i maksymalnymi. W końcu jest wywoływana dwa razy z operatorem bitowym.

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

Liczba losowa przy użyciu funkcji rand() bez argumentu:

";
Echo "

Pierwsza losowa liczba: ". skraj(). "

";
Echo "

Druga liczba losowa: ". skraj(). "

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

Liczba losowa przy użyciu funkcji rand() poprzez zdefiniowanie argumentów:

";
Echo "

Pierwsza losowa liczba z zakresu [10-100]: ". rand(10100). "

";
Echo "

Druga liczba losowa z zakresu [100-500]: ". rand (100 500). "

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

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

";
echo "Pierwsza liczba losowa przy użyciu operatora bitowego (&) z 10: ";
echo rand()&10 ;
Echo "
Druga liczba losowa przy użyciu operatora bitowego (&) z 50: ";
echo rand()&50 ;
?>

Wynik:

Podobny wynik 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 trzecim 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 random_int()

Ta funkcja służy do generowania kryptograficznie pseudobezpiecznej liczby losowej. Funkcja wywołania systemowego losowy(2) jest używany w Ubuntu do generowania 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 jest podana 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 ustawienia najniższej wartości, a drugi służy do ustawienia najwyższej wartości liczby. Korzystanie z tej funkcji pokazano poniżej.

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

Poniższy przykład pokazuje użycie use random_int() funkcja generowania liczby losowej poprzez podanie wartości minimalnej i maksymalnej. Wartości te mogą być liczbą całkowitą lub zmiennoprzecinkową, ale wartość minimalna nie może być większa niż wartość maksymalna. Na początku random_int() funkcji, dodatnie liczby całkowite są używane jako wartości minimalne i maksymalne maximum. W sekundę random_int() funkcja, ujemna liczba całkowita jest używana jako minimalna, a dodatnia liczba całkowita jest używana jako wartość maksymalna. W trzecim random_int() funkcji, liczby zmiennoprzecinkowe są używane jako wartości minimalne i maksymalne.

//Ustaw dodatnie wartości minimalne i dodatnie maksymalne
Echo "

Dane wyjściowe random_int() z dodatnimi wartościami min i max: " .random_int(1000, 10000). "

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

Dane wyjściowe random_int() z ujemną minimalną i dodatnią wartością maksymalną: " .random_int(-500, 10000). "

";
//Ustaw ułamkowe wartości minimalne i maksymalne
Echo "

Dane wyjściowe random_int() z ułamkową wartością minimalną i maksymalną: " .random_int(0.67, 54.89). "

";
?>

Wynik:
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 liczb pseudolosowych za pomocą Mersenne Twister generator. Działa szybciej niż skraj() funkcjonować. Składnia tej funkcji jest podana poniżej.

Składnia:

int mt_rand(int min, int max)

Podobnie jak skraj() funkcja, może potrzebować dwóch argumentów, aby ustawić wartość maksymalną i minimalną, a funkcja ta może być również używana bez żadnych argumentów. Korzystanie z tej funkcji pokazano poniżej.

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

Poniższy przykład pokazuje użycie use mt_rand() funkcja z argumentami i bez. Pierwszy mt_rand() funkcja jest wywoływana bez żadnego argumentu, który wygeneruje dużą liczbę całkowitą. Drugi mt_rand() funkcja jest wywoływana z minimalną i maksymalną wartością, która wygeneruje liczbę z określonego zakresu.

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

Wygenerowana liczba losowa przy użyciu mt_rand() bez argumentu:

";
Echo "

". mt_rand(). "

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

Wygenerowana liczba losowa za pomocą mt_rand() poprzez zdefiniowanie argumentów:

";
Echo "

". mt_rand(15,150). "

";
?>

Wynik:
Następujące podobne dane wyjściowe wygenerują po uruchomieniu skryptu z serwera. Pierwsze wyjście pokazuje, że duża liczba całkowita została wygenerowana, gdy żaden argument nie jest używany w mt_rand() funkcjonować. Drugie wyjście pokazuje, że została wygenerowana liczba z zakresu od 15 do 150.

Wniosek

Trzy różne sposoby generowania liczby losowej w PHP zostały wyjaśnione w tym samouczku za pomocą prostych przykładów. Lepiej użyć random_int() funkcja, gdy bezpieczeństwo jest ważne, ale lepiej jest użyć mt_rand() funkcja, gdy wymagane jest szybsze generowanie liczby losowej. skraj() funkcja może służyć do generowania prostej liczby losowej.

Mouse left-click button not working on Windows 10
If you are using a dedicated mouse with your laptop, or desktop computer but the mouse left-click button is not working on Windows 10/8/7 for some rea...
Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...