php

Skapa ett slumpmässigt tal i PHP

Skapa ett slumpmässigt tal i PHP
Att generera ett annat nummer varje gång genom att köra skriptet kallas slumptalet. Slumpmässiga siffror kan användas för olika ändamål i programmeringen, såsom att generera ett slumpmässigt filnamn, slumpmässigt lösenord och ett slumpmässigt tal som inte är förutsägbart för andra. PHP har många inbyggda funktioner för att generera slumptal på olika sätt. rand(), random_int (), och mt_rand () funktioner används i PHP för att generera slumptal. Hur dessa funktioner används för att generera slumptal förklaras i denna handledning.

Användning av rand ()

Denna funktion används för att generera ett slumpmässigt heltal. Syntaxen för denna funktion ges nedan.

Syntax:

int rand ()

eller

int rand (int min, int max)

Det returnerar ett stort slumpmässigt heltal om ingen parameter används i funktionen. Om två argumentvärden tillhandahålls i den här funktionen returnerar det ett slumpmässigt heltal baserat på argumentvärdena. Användningen av denna funktion visas nedan.

Exempel 1: Olika användningar av funktionen rand ()

Följande exempel visar de tre olika användningsområdena för rand() funktion för att generera ett slumpmässigt tal. Först började rand() funktionen kallas två gånger utan något argument för att visa hur slumptalen genereras som standard. Därefter kallas det två gånger med två olika minimi- och maximivärden. Äntligen kallas det två gånger med bitvis operatör.

// Användning av rand () -funktionen utan argument
eko "

Slumpmässiga tal med rand () utan argument:

";
eko "

Det första slumptalet: ". rand(). "

";
eko "

Det andra slumptalet: ". rand(). "

";
// Användning av rand () -funktion med argument
eko "

Slumptalet med rand () genom att definiera argumenten:

";
eko "

Det första slumptalet inom intervallet [10-100]: ". rand (10 100). "

";
eko "

Det andra slumpmässiga talet inom intervallet [100-500]: ". rand (100.500). "

";
// Användning av rand () -funktion med bitvis operatör
eko "

Slumpmässiga siffror med rand () med bitvis operator:

";
eko "Det första slumpmässiga talet med bitvis operator (&) med 10:";
echo rand () & 10;
eko "
Det andra slumptalet som använder bitvis operator (&) med 50: ";
echo rand () & 50;
?>

Produktion:

En liknande utdata kommer att visas efter att man kört skriptet från servern. Den första utgången visar två olika stora nummer. I den andra utgången har det första slumptalet genererats inom intervallet 10 till 100 och det andra slumptalet har genererats inom intervallet 100 till 500. I den tredje utgången har det första slumptalet genererats inom området 0 till 10, och det andra slumptalet har genererats inom området 0 till 50.

Användning av random_int ()

Denna funktion används för att generera ett kryptografiskt pseudosäkert slumptal. Systemets samtalsfunktion getrandom (2) används på Ubuntu för att generera det kryptografiska slumptalet. Denna funktion är säkrare än rand() funktion eftersom det genererade numret inte är förutsägbart. Men random_int () är långsammare än rand() fungera. Syntaxen för denna funktion ges nedan.

Syntax:

int slumpmässigt_int (int min, int max)

Två argument används i funktionen för att ställa in intervallet för att generera ett kryptografiskt slumptal. Det första argumentet används för att ställa in det lägsta värdet och det andra argumentet används för att ställa in det högsta värdet för numret. Användningen av denna funktion visas nedan.

Exempel 2: Olika användningar av funktionen random_int ()

Följande exempel visar användningen av random_int () funktion för att generera slumptalet genom att ange minimi- och maximivärdena. Dessa värden kan vara ett heltal eller flytande tal, men minimumet kan inte vara större än det maximala värdet. I den första random_int () funktion, används de positiva heltal som minimi- och maxvärden. På sekunden random_int () funktionen används det negativa heltalet som ett minimum och det positiva heltalet används som ett maximivärde. I det tredje random_int () funktion används de flytande siffrorna som minimi- och maximivärden.

// Ställ in de positiva min- och positiva maxvärdena
eko "

Utgången från random_int () med de positiva min- och maxvärdena: " .random_int (1000, 10000). "

";
// Ställ in negativa min- och positiva maxvärden
eko "

Utgången från random_int () med negativa min- och positiva maxvärden: " .random_int (-500, 10000). "

";
// Ställ in fraktionerade min- och maxvärden
eko "

Utgången från random_int () med min- och maxvärdena i bråk: " .random_int (0.67, 54.89). "

";
?>

Produktion:
Följande liknande utdata visas efter att man kört skriptet från servern.

Användning av mt_rand ()

Denna funktion används för att generera högkvalitativa pseudoslumpmässiga nummer med hjälp av Mersenne Twister generator. Det fungerar snabbare än rand() fungera. Syntaxen för denna funktion ges nedan.

Syntax:

int mt_rand (int min, int max)

Som rand() funktion kan det ta två argument för att ställa in max- och minvärdena, och den här funktionen kan också användas utan några argument. Användningen av denna funktion visas nedan.

Exempel 3: Olika användningar av funktionen mt_rand ()

Följande exempel visar användningen av mt_rand () fungera med och utan argumenten. Den första mt_rand () funktionen kallas utan något argument som genererar ett stort heltal. Den andra mt_rand () funktionen kallas med det lägsta och högsta värdet som genererar ett tal inom det definierade intervallet.

// Användning av funktionen mt_rand () utan argument
eko "

Det genererade slumptalet med mt_rand () utan argument:

";
eko "

". mt_rand (). "

";
// Användning av mt_rand () -funktionen med argumenten
eko "

Det genererade slumptalet med mt_rand () genom att definiera argumenten:

";
eko "

". mt_rand (15 150). "

";
?>

Produktion:
Följande liknande utdata genereras efter att skriptet har körts från servern. Den första utgången visar att ett stort heltal har genererats när inget argument används i mt_rand () fungera. Den andra utgången visar att ett tal inom intervallet 15 till 150 har genererats.

Slutsats

Tre olika sätt att generera ett slumpmässigt nummer i PHP har förklarats i denna handledning med enkla exempel. Det är bättre att använda random_int () funktion när säkerhet är viktig, men det är bättre att använda mt_rand () funktion när det krävs för att generera slumptalet snabbare. rand() funktionen kan användas för att generera ett enkelt slumptal.

Gratis och öppen källkodsmotorer för utveckling av Linux-spel
Den här artikeln kommer att täcka en lista över gratis motorer med öppen källkod som kan användas för att utveckla 2D- och 3D-spel på Linux. Det finns...
Shadow of the Tomb Raider for Linux Tutorial
Shadow of the Tomb Raider är det tolfte tillskottet till Tomb Raider-serien - en action-äventyrsspelfranchise skapad av Eidos Montreal. Spelet mottogs...
Hur man förbättrar FPS i Linux?
FPS står för Bildrutor per sekund. FPS: s uppgift är att mäta bildfrekvensen i videouppspelningar eller spelprestanda. Med enkla ord betecknas antalet...