php

Generer et tilfældigt tal i PHP

Generer et tilfældigt tal i PHP
At generere et andet nummer hver gang ved at udføre scriptet kaldes tilfældigt tal. Det tilfældige tal kan bruges til forskellige formål i programmeringen, såsom generering af et tilfældigt filnavn, tilfældigt kodeord og et tilfældigt tal, der ikke er forudsigeligt for andre. PHP har mange indbyggede funktioner til at generere tilfældige tal på forskellige måder. rand (), tilfældig_int (), og mt_rand () funktioner bruges i PHP til at generere tilfældige tal. Hvordan disse funktioner bruges til at generere tilfældige tal forklares i denne vejledning.

Brug af rand ()

Denne funktion bruges til at generere et tilfældigt heltal. Syntaksen for denne funktion er angivet nedenfor.

Syntaks:

int rand ()

eller

int rand (int min, int max)

Det returnerer et stort tilfældigt heltal, hvis der ikke bruges nogen parameter i funktionen. Hvis der er angivet to argumentværdier i denne funktion, returnerer det et tilfældigt heltal baseret på argumentværdierne. Brug af denne funktion er vist nedenfor.

Eksempel 1: Forskellige anvendelser af rand () -funktionen

Følgende eksempel viser de tre forskellige anvendelser af rand () funktion til at generere et tilfældigt tal. Ved første, den rand () funktion kaldes to gange uden noget argument for at vise, hvordan tilfældige tal genereres som standard. Dernæst kaldes det to gange med to forskellige minimums- og maksimumværdier. Endelig kaldes det to gange med bitvis operatør.

// Brug af rand () -funktion uden argument
ekko "

Det tilfældige tal, der bruger rand () uden argument:

";
ekko "

Det første tilfældige tal: ". rand (). "

";
ekko "

Det andet tilfældige tal: ". rand (). "

";
// Brug af rand () -funktion med argumenter
ekko "

Det tilfældige tal ved hjælp af rand () ved at definere argumenterne:

";
ekko "

Det første tilfældige tal inden for området [10-100]: ". rand (10.100). "

";
ekko "

Det andet tilfældige tal inden for området [100-500]: ". rand (100.500). "

";
// Brug af rand () -funktion med bitvis operator
ekko "

Det tilfældige tal ved hjælp af rand () ved hjælp af bitvis operator:

";
ekko "Det første tilfældige tal ved hjælp af bitvis operator (&) med 10:";
ekko rand () & 10;
ekko "
Det andet tilfældige tal ved hjælp af bitvis operator (&) med 50: ";
ekko rand () & 50;
?>

Produktion:

En lignende output vises efter kørsel af scriptet fra serveren. Den første output viser to forskellige store tal. I det andet output er det første tilfældige tal genereret inden for området 10 til 100, og det andet tilfældige tal er blevet genereret inden for intervallet 100 til 500. I det tredje output er det første tilfældige tal blevet genereret i området fra 0 til 10, og det andet tilfældige tal er blevet genereret inden for området fra 0 til 50.

Brug af random_int ()

Denne funktion bruges til at generere et kryptografisk pseudosikkert tilfældigt tal. Systemopkaldsfunktionen getrandom (2) bruges på Ubuntu til at generere det kryptografiske tilfældige tal. Denne funktion er mere sikker end rand () funktion, fordi det genererede tal ikke er forudsigeligt. Men tilfældig_int () er langsommere end rand () fungere. Syntaksen for denne funktion er angivet nedenfor.

Syntaks:

int random_int (int min, int max)

To argumenter bruges i funktionen til at indstille området til generering af et kryptografisk tilfældigt tal. Det første argument bruges til at indstille den laveste værdi, og det andet argument bruges til at indstille den højeste værdi af nummeret. Brug af denne funktion er vist nedenfor.

Eksempel 2: Forskellige anvendelser af random_int () -funktionen

Følgende eksempel viser brugen af tilfældig_int () funktion til at generere tilfældigt tal ved at angive minimums- og maksimumværdier. Disse værdier kan være et helt tal eller et flydende tal, men minimumet kan ikke være større end den maksimale værdi. Først og fremmest tilfældig_int () funktion bruges de positive heltal som minimums- og maksimumværdier. I det andet tilfældig_int () funktion, bruges det negative heltal som et minimum, og det positive heltal bruges som en maksimumsværdi. I det tredje tilfældig_int () funktion bruges de flydende tal som minimums- og maksimumværdier.

// Indstil de positive min- og positive max-værdier
ekko "

Outputtet af random_int () med de positive min og max værdier: " .tilfældig_int (1000, 10000). "

";
// Indstil de negative min- og positive max-værdier
ekko "

Outputtet af random_int () med negative min og positive max værdier: " .tilfældig_int (-500, 10000). "

";
// Indstil brøkminimum- og maksimumværdier
ekko "

Outputtet af random_int () med min- og max-værdier i brøkdel: " .tilfældig_int (0.67, 54.89). "

";
?>

Produktion:
Følgende lignende output vises efter kørsel af scriptet fra serveren.

Brug af mt_rand ()

Denne funktion bruges til at generere højkvalitets pseudotilfældige tal ved hjælp af Mersenne Twister generator. Det fungerer hurtigere end rand () fungere. Syntaksen for denne funktion er angivet nedenfor.

Syntaks:

int mt_rand (int min, int max)

Ligesom rand () funktion, kan det tage to argumenter at indstille max- og min-værdierne, og denne funktion kan også bruges uden nogen argumenter. Brug af denne funktion er vist nedenfor.

Eksempel 3: Forskellige anvendelser af funktionen mt_rand ()

Følgende eksempel viser brugen af mt_rand () fungere med og uden argumenterne. Den første mt_rand () funktion kaldes uden noget argument, der genererer et stort heltal. Sekundet mt_rand () funktion kaldes med den mindste og maksimale værdi, der genererer et tal inden for det definerede interval.

// Brug af funktionen mt_rand () uden argument
ekko "

Det genererede tilfældige tal ved hjælp af mt_rand () uden argument:

";
ekko "

". mt_rand (). "

";
// Brug af funktionen mt_rand () med argumenterne
ekko "

Det genererede tilfældige tal ved hjælp af mt_rand () ved at definere argumenterne:

";
ekko "

". mt_rand (15.150). "

";
?>

Produktion:
Følgende lignende output genereres efter kørsel af scriptet fra serveren. Den første output viser, at der er genereret et stort heltal, når der ikke bruges noget argument i mt_rand () fungere. Den anden output viser, at der er genereret et tal inden for intervallet 15 til 150.

Konklusion

Tre forskellige måder at generere et tilfældigt tal i PHP er blevet forklaret i denne vejledning ved hjælp af enkle eksempler. Det er bedre at bruge tilfældig_int () funktion, når sikkerhed er vigtig, men det er bedre at bruge mt_rand () funktion, når det er nødvendigt at generere tilfældigt tal hurtigere. rand () funktion kan bruges til at generere et simpelt tilfældigt tal.

Sådan vises OSD-overlay i fuldskærms Linux-apps og -spil
Afspilning af fuldskærmsspil eller brug af apps i distraktionsfri fuldskærmstilstand kan afskære dig fra relevante systemoplysninger, der er synlige i...
Top 5 spiloptagelseskort
Vi har alle set og elsket streaming af gameplay på YouTube. PewDiePie, Jakesepticye og Markiplier er kun nogle af de bedste spillere, der har tjent mi...
Sådan udvikler du et spil på Linux
For et årti siden ville ikke mange Linux-brugere forudsige, at deres foretrukne operativsystem en dag ville være en populær spilplatform til kommercie...