php

Sugeneruokite atsitiktinį skaičių PHP

Sugeneruokite atsitiktinį skaičių PHP
Kiekvieną kartą generuojant skirtingą skaičių vykdant scenarijų, vadinamas atsitiktinis skaičius. Atsitiktinis skaičius gali būti naudojamas įvairiems programavimo tikslams, pavyzdžiui, generuoti atsitiktinį failo pavadinimą, atsitiktinį slaptažodį ir atsitiktinį skaičių, kurio kiti nenuspėja. PHP turi daug įtaisytų funkcijų, leidžiančių generuoti atsitiktinius skaičius įvairiais būdais. randas (), random_int (), ir „mt_rand“ () funkcijos PHP naudojamos atsitiktiniams skaičiams generuoti. Kaip šios funkcijos naudojamos atsitiktiniams skaičiams generuoti, paaiškinta šioje pamokoje.

Rando () naudojimas

Ši funkcija naudojama atsitiktiniam sveikojo skaičiaus generavimui. Šios funkcijos sintaksė pateikiama žemiau.

Sintaksė:

int randas ()

arba

int randas (int min, int max)

Jis grąžina didelį atsitiktinį sveikojo skaičiaus skaičių, jei funkcijoje nenaudojamas joks parametras. Jei šioje funkcijoje pateikiamos dvi argumento reikšmės, ji grąžins atsitiktinį sveikojo skaičiaus skaičių, pagrįstą argumento reikšmėmis. Šios funkcijos naudojimas parodytas žemiau.

1 pavyzdys: Skirtingi rand () funkcijos naudojimo būdai

Toliau pateiktame pavyzdyje parodyti trys skirtingi randas () funkcija generuoti atsitiktinį skaičių. Iš pradžių randas () Funkcija iškviečiama du kartus be jokių argumentų, kad būtų rodoma, kaip pagal nutylėjimą generuojami atsitiktiniai skaičiai. Tada jis vadinamas du kartus su dviem skirtingomis minimaliomis ir maksimaliomis reikšmėmis. Pagaliau jis du kartus iškviečiamas su bitų operatoriumi.

// Funkcijos rand () naudojimas be argumento
aidas "

Atsitiktinis skaičius naudojant rand () be argumento:

";
aidas "

Pirmasis atsitiktinis skaičius: ". randas (). "

";
aidas "

Antrasis atsitiktinis skaičius: ". randas (). "

";
// Funkcijos rand () naudojimas su argumentais
aidas "

Atsitiktinis skaičius naudojant rand () apibrėžiant argumentus:

";
aidas "

Pirmasis atsitiktinis skaičius diapazone [10–100]: ". randas (10 100). "

";
aidas "

Antrasis atsitiktinis skaičius diapazone [100–500]: ". randas (100 500). "

";
// Funkcijos rand () naudojimas su operatoriumi bitais
aidas "

Atsitiktinis skaičius naudojant rand (), naudojant bitų operatorių:

";
echo "Pirmasis atsitiktinis skaičius, naudojant bitų operatorių (&) su 10:";
aidas randas () & 10;
aidas "
Antrasis atsitiktinis skaičius, naudojant bitų operatorių (&) su 50: ";
aidas randas () & 50;
?>

Išvestis:

Panaši išvestis bus rodoma paleidus scenarijų iš serverio. Pirmoji išvestis rodo du skirtingus didelius skaičius. Antrame išėjime pirmasis atsitiktinis skaičius buvo sugeneruotas nuo 10 iki 100, o antrasis - nuo 100 iki 500. Trečiajame išvestyje pirmasis atsitiktinis skaičius buvo sugeneruotas nuo 0 iki 10, o antrasis - nuo 0 iki 50.

Random_int () naudojimas

Ši funkcija naudojama norint sukurti kriptografiškai saugų pseudo saugų atsitiktinį skaičių. Sistemos skambučio funkcija atsitiktinumas (2) yra naudojamas „Ubuntu“ kriptografiniam atsitiktiniam skaičiui generuoti. Ši funkcija yra saugesnė nei randas () funkciją, nes sugeneruotas skaičius nėra numatomas. Bet random_int () yra lėtesnis nei randas () funkcija. Šios funkcijos sintaksė pateikiama žemiau.

Sintaksė:

int atsitiktinis_int (int min, int max)

Norėdami nustatyti kriptografinio atsitiktinio skaičiaus generavimo diapazoną, funkcijoje naudojami du argumentai. Pirmasis argumentas naudojamas nustatyti mažiausią vertę, o antrasis argumentas - nustatyti didžiausią skaičiaus vertę. Šios funkcijos naudojimas parodytas žemiau.

2 pavyzdys: Funkcijos random_int () skirtingi naudojimo būdai

Šis pavyzdys rodo random_int () funkcija generuoti atsitiktinį skaičių, nurodant mažiausią ir didžiausią vertes. Šios vertės gali būti sveikasis skaičius arba slankusis skaičius, tačiau mažiausia negali būti didesnė už didžiausią vertę. Pirmajame random_int () funkcija, teigiami sveikieji skaičiai naudojami kaip mažiausia ir didžiausia reikšmės. Antroje random_int () funkcija, neigiamas sveikasis skaičius naudojamas kaip minimalus, o teigiamas sveikasis skaičius - kaip didžiausia reikšmė. Trečioje random_int () funkcija, slankieji skaičiai naudojami kaip mažiausia ir didžiausia reikšmės.

// Nustatykite teigiamas min ir teigiamas max vertes
aidas "

Random_int () išvestis su teigiamomis min ir max vertėmis: " .random_int (1000, 10000). "

";
// Nustatykite neigiamas min ir teigiamas max vertes
aidas "

Random_int () išvestis su neigiamomis min ir teigiamomis max vertėmis: " .random_int (-500, 10000). "

";
// Nustatykite trupmenines min ir max vertes
aidas "

Rand_int () išvestis su dalinėmis min ir max vertėmis: " .atsitiktinis_intinas (0.67, 54.89). "

";
?>

Išvestis:
Ši panaši išvestis bus rodoma paleidus scenarijų iš serverio.

„Mt_rand“ () naudojimas

Ši funkcija naudojama aukštos kokybės pseudo-atsitiktiniams skaičiams generuoti naudojant Mersenne Twister generatorius. Tai veikia greičiau nei randas () funkcija. Šios funkcijos sintaksė pateikiama žemiau.

Sintaksė:

int mt_rand (int min, int max)

Kaip randas () Jei norite nustatyti maks. ir min. reikšmes, gali prireikti dviejų argumentų, be to, šią funkciją galima naudoti be jokių argumentų. Šios funkcijos naudojimas parodytas žemiau.

3 pavyzdys: Skirtingi funkcijos mt_rand () naudojimo būdai

Šis pavyzdys rodo „mt_rand“ () funkcija su argumentais ir be jų. Pirmas „mt_rand“ () funkcija iškviečiama be jokių argumentų, kurie sugeneruos didelį sveiką skaičių. Antras „mt_rand“ () funkcija iškviečiama su mažiausia ir didžiausia verte, kuri sugeneruos skaičių apibrėžtame diapazone.

// Funkcijos mt_rand () naudojimas be argumento
aidas "

Sugeneruotas atsitiktinis skaičius naudojant „mt_rand“ () be argumento:

";
aidas "

". „mt_rand“ (). "

";
// Funkcijos mt_rand () naudojimas su argumentais
aidas "

Sugeneruotas atsitiktinis skaičius naudojant mt_rand () apibrėžiant argumentus:

";
aidas "

". „mt_rand“ (15 150). "

";
?>

Išvestis:
Ši panaši išvestis bus sukurta paleidus scenarijų iš serverio. Pirmasis išėjimas rodo, kad sugeneruotas didelis sveikasis skaičius, kai „mt_rand“ () funkcija. Antrasis išėjimas rodo, kad buvo sukurtas skaičius nuo 15 iki 150.

Išvada

Trys skirtingi atsitiktinio skaičiaus generavimo būdai PHP buvo paaiškinti šioje pamokoje, naudojant paprastus pavyzdžius. Geriau naudoti random_int () funkcija, kai saugumas yra svarbus, tačiau geriau naudoti „mt_rand“ () funkcija, kai reikia greičiau generuoti atsitiktinį skaičių. randas () funkcija gali būti naudojama paprastam atsitiktiniam skaičiui generuoti.

Kaip naudoti „AutoKey“, norint automatizuoti „Linux“ žaidimus
„AutoKey“ yra darbalaukio automatizavimo įrankis, skirtas „Linux“ ir „X11“, užprogramuotas „Python 3“, „GTK“ ir „Qt“. Naudodami scenarijų ir „MACRO“ f...
Kaip parodyti FPS skaitiklį „Linux“ žaidimuose
„Linux“ žaidimai gavo didelį postūmį, kai „Valve“ paskelbė „Linux“ palaikymą „Steam“ klientui ir jų žaidimams 2012 m. Nuo tada daugelis AAA ir indie ž...
Kaip atsisiųsti ir paleisti „Sid Meier Civilization VI“ sistemoje „Linux“
Įvadas į žaidimą „Civilization 6“ yra šiuolaikinė klasikinės koncepcijos, pristatytos „Age of Empires“ žaidimų serijoje, koncepcija. Idėja buvo gana p...