Generere et tilfeldig tall i PHP

Generere et tilfeldig tall i PHP
Å generere et annet tall hver gang ved å utføre skriptet kalles det tilfeldige nummeret. Det tilfeldige antallet kan brukes til forskjellige formål i programmeringen, for eksempel å generere et tilfeldig filnavn, tilfeldig passord og et tilfeldig tall som ikke er forutsigbart for andre. PHP har mange innebygde funksjoner for å generere tilfeldige tall på forskjellige måter. Rand (), random_int (), og mt_rand () Funksjoner brukes i PHP for å generere tilfeldige tall. Hvordan disse funksjonene brukes til å generere de tilfeldige tallene blir forklart i denne opplæringen.

Bruk av rand ()

Denne funksjonen brukes til å generere et tilfeldig heltallnummer. Syntaksen til denne funksjonen er gitt nedenfor.

Syntaks:

int rand ()

eller

int rand (int min, int max)

Det returnerer et stort tilfeldig heltallnummer hvis ingen parameter brukes i funksjonen. Hvis to argumentverdier er gitt i denne funksjonen, vil den returnere et tilfeldig heltall nummer basert på argumentverdiene. Bruken av denne funksjonen vises nedenfor.

Eksempel 1: Ulike bruksområder av RAND () -funksjon

Følgende eksempel viser de tre forskjellige bruksområdene til Rand () funksjon for å generere et tilfeldig tall. Til å begynne med, den Rand () Funksjon kalles to ganger uten noe argument for å vise hvordan de tilfeldige tallene genereres som standard. Deretter kalles det to ganger med to forskjellige minimums- og maksimumsverdier. Til slutt kalles det to ganger med bitvis operatør.

// bruk av rand () -funksjon uten argument
ekko "

Det tilfeldige tallet som bruker Rand () uten argument:

";
ekko "

Det første tilfeldige tallet: ". Rand (). ""

";
ekko "

Det andre tilfeldige tallet: ". Rand (). ""

";
// Bruk av rand () -funksjon med argumenter
ekko "

Det tilfeldige tallet som bruker RAND () ved å definere argumentene:

";
ekko "

Det første tilfeldige tallet innen området [10-100]: ". Rand (10.100). ""

";
ekko "

Det andre tilfeldige tallet innen området [100-500]: ". Rand (100 500). ""

";
// Bruk av rand () -funksjon med bitvis operatør
ekko "

Det tilfeldige tallet som bruker RAND () ved bruk av bitvis operatør:

";
ekko "det første tilfeldige tallet som bruker Bitwise Operator (&) med 10:";
Echo Rand () & 10;
ekko "
Det andre tilfeldige tallet som bruker Bitwise Operator (&) med 50: ";
Echo Rand () & 50;
?>

Produksjon:

En lignende utgang vises etter å ha kjørt skriptet fra serveren. Den første utgangen viser to forskjellige store tall. I den andre utgangen har det første tilfeldige tallet blitt generert innenfor området 10 til 100, og det andre tilfeldige tallet har blitt generert innenfor området 100 til 500. I den tredje utgangen har det første tilfeldige tallet blitt generert innen 0 til 10, og det andre tilfeldige tallet er blitt generert innenfor området 0 til 50.

Bruk av random_int ()

Denne funksjonen brukes til å generere et kryptografisk pseudo -sikkert tilfeldig tall. Systemanropsfunksjonen getrandom (2) brukes på Ubuntu for å generere det kryptografiske tilfeldige tallet. Denne funksjonen er sikrere enn Rand () funksjon fordi det genererte tallet ikke er forutsigbart. Men random_int () er tregere enn Rand () funksjon. Syntaksen til denne funksjonen er gitt nedenfor.

Syntaks:

int random_int (int min, int max)

To argumenter brukes i funksjonen for å angi rekkevidden for å generere et kryptografisk tilfeldig tall. Det første argumentet brukes til å sette den laveste verdien, og det andre argumentet brukes til å angi den høyeste verdien av antallet. Bruken av denne funksjonen vises nedenfor.

Eksempel 2: Ulike bruksområder av random_int () -funksjon

Følgende eksempel viser bruken av random_int () funksjon for å generere det tilfeldige tallet ved å gi minimums- og maksimumsverdier. Disse verdiene kan være et heltall eller flytende tall, men minimum kan ikke være større enn maksimal verdi. I det første random_int () funksjon, de positive heltallstallene brukes som minimums- og maksimumsverdier. I det andre random_int () Funksjon, det negative heltallnummeret brukes som et minimum, og det positive heltallnummeret brukes som en maksimal verdi. I den tredje random_int () funksjon, de flytende tallene brukes som minimums- og maksimumsverdier.

// angi Positive Min og Positive Max -verdier
ekko "

Utgangen fra random_int () med de positive min- og maksverdiene: "" .random_int (1000, 10000). ""

";
// angi negative min og positive maksimale verdier
ekko "

Utgangen fra random_int () med de negative min og positive max -verdiene: "" .random_int (-500, 10000). ""

";
// Angi brøkdelene og maksimalverdiene
ekko "

Utgangen fra random_int () med brøkdelene og maksimalverdiene: "" .RANDOM_INT (0.67, 54.89). ""

";
?>

Produksjon:
Følgende lignende utdata vises etter å ha kjørt skriptet fra serveren.

Bruk av MT_RAND ()

Denne funksjonen brukes til å generere pseudo-tilfeldige tall av høy kvalitet ved å bruke Mersenne Twister generator. Det fungerer raskere enn Rand () funksjon. Syntaksen til denne funksjonen er gitt nedenfor.

Syntaks:

int mt_rand (int min, int max)

Som Rand () Funksjon, det kan ta to argumenter for å angi maks- og minverdier, og denne funksjonen kan også brukes uten noen argumenter. Bruken av denne funksjonen vises nedenfor.

Eksempel 3: Ulike bruksområder av mt_rand () -funksjon

Følgende eksempel viser bruken av mt_rand () funksjon med og uten argumentene. Den første mt_rand () Funksjon kalles uten noe argument som vil generere et stort heltallnummer. Den andre mt_rand () Funksjon kalles med minimums- og maksimumsverdien som vil generere et tall innenfor området definert.

// bruk av mt_rand () -funksjon uten argument
ekko "

Det genererte tilfeldige tallet som bruker MT_RAND () uten argument:

";
ekko "

"". mt_rand (). ""

";
// Bruk av MT_RAND () -funksjonen med argumentene
ekko "

Det genererte tilfeldige tallet ved bruk av mt_rand () ved å definere argumentene:

";
ekko "

"". MT_RAND (15.150). ""

";
?>

Produksjon:
Følgende lignende utdata vil generere etter å ha kjørt skriptet fra serveren. Den første utgangen viser at et stort heltallnummer er blitt generert når ingen argumenter brukes i mt_rand () funksjon. Den andre utgangen viser at et tall innen 15 til 150 er generert.

Konklusjon

Tre forskjellige måter å generere et tilfeldig antall i PHP har blitt forklart i denne opplæringen ved hjelp av enkle eksempler på. Det er bedre å bruke random_int () funksjon når sikkerhet er viktig, men det er bedre å bruke mt_rand () funksjon når det kreves å generere det tilfeldige tallet raskere. Rand () Funksjon kan brukes til å generere et enkelt tilfeldig tall.