php

Funkcijos „usleep ()“ naudojimas PHP

Funkcijos „usleep ()“ naudojimas PHP
PHP daugiausia naudojamos dvi funkcijos, kurios tam tikrą laiką atideda scenarijaus vykdymą. Tai miega () ir miega (). Funkcija „usleep“ () naudojama atidėti scenarijaus vykdymą konkrečioms mikrosekundėms. Ši funkcija gali sukelti išimtį, jei pateikiama neigiama mikrosekundžių reikšmė. Ši funkcija taip pat sunaudoja procesoriaus ciklą, kai iškviečiama. Kaip šią funkciją galima naudoti PHP, parodyta šioje pamokoje.

Sintaksė:

Šios funkcijos sintaksė pateikiama žemiau.

negalite užmigti (mikrosekundėmis)

Ši funkcija ima mikrosekundžių vertę kaip funkcijos argumentus, naudojamus atidėti scenarijų, kuriame naudojama ši funkcija. Ši funkcija nieko negrąžina. Skirtingi šios funkcijos naudojimo būdai parodyti žemiau, naudojant įvairius pavyzdžius.

1 pavyzdys: „usleep“ () naudojimas 5 sekundėms palaukti

Šis pavyzdys rodo, kaip „usleep“ () gali būti naudojamas 5 sekundžių vėlavimui nustatyti scenarijuje. Sukurkite PHP failą naudodami šį scenarijų. date () funkcija scenarijuje naudojama dabartinei datai ir laikui nuskaityti. funkcija usleep () iškviečiama įvykdžius pirmosios datos () funkciją. 5 sekundės yra lygios 5000000 mikrosekundžių. Taigi 5000000 naudojamas kaip „usleep“ (argumento) reikšmė nustatant vėlavimą 5 sekundėms. Tada dar kartą iškviečiama data () funkcija.

// Rodyti dabartinę datą ir laiką
aido data ('d F, Y h: i: s a'). "
";
// Atspausdinkite pranešimą
aidas „Laukiu 5 sekundes…
";
// 5 sekundes atidėkite scenarijaus vykdymą
usleep (5000000);
// Rodyti dabartinę datą ir laiką
aido data ('d F, Y h: i: s a'). "
";
?>

Išvestis:


Vykdydamas jį iš serverio, scenarijus laukia 5 sekundes. Išvestis rodo, kad scenarijus vykdymą pradėjo 05:32:05, o scenarijus baigėsi 05:32:11. Taigi, prieš parodant išvestį, praėjo 5 sekundės.

2 pavyzdys: „usleep“ () naudojimas laukiant atsitiktinių kartų

Šis pavyzdys parodo, kaip „usleep“ () ir rand () funkcijos gali būti naudojamos nustatant atsitiktinio kartų skaičiaus vėlavimą. Sukurkite PHP failą naudodami šį scenarijų. Pirmoji scenarijaus datos () funkcija nuskaitys dabartinį sistemos laiką. Tada rand () funkcija naudojama skaičiui tarp 1000000 ir 4000000 generuoti, o sugeneruota atsitiktinė reikšmė bus naudojama kaip funkcijos „usleep ()“ argumento vertė. Sugeneruotas atsitiktinis skaičius bus padalytas iš 1000000 ir panaudotas round () funkcijoje, kad gautumėte uždelsimo laiką sekundėmis. Antroji datos () funkcija naudojama laiko vertei nuskaityti atlikus „usleep“) funkciją.

// Rodyti dabartinį laiką
aido data ('h: i: s a'). "
";
// Nustatykite atsitiktinių mikrosekundžių vertę
$ delsa = randas (1000000,4000000);
// Atidėkite scenarijaus vykdymą apibrėžtoms sekundėms
usleep ($ delsa);
// Konvertuokite mikrosekundes į sekundes
$ sekundės = apvalus ($ delay / 1000000);
// Atspausdinkite pranešimą
aidas "Laukiama $ sekundžių sekundžių ..
";
// Rodyti dabartinį laiką
aido data ('h: i: s a'). "
";
?>

Išvestis:

Pagal šį išvestį scenarijus laukė 4 sekundes po vykdymo serveryje. Išvestis rodo, kad scenarijus vykdymą pradėjo 05:35:40, o scenarijus baigėsi 05:35:44. Taigi scenarijus buvo atidėtas 4 sekundes.

3 pavyzdys: pakartokite scenarijų po 2 sekundžių

Šis pavyzdys rodo, kaip tą patį scenarijų galima pakartoti po 2 sekundžių vėlavimo, atsižvelgiant į vartotojo pasirinkimą. Sukurkite HTML failą pavadinimu forma1.HTML su tokiu scenarijumi, kad gautume reikšmę x ir n.

forma1.HTML


„Usleep“ () funkcijos naudojimas
Įveskite x reikšmę:

Įveskite n reikšmę:

Formos duomenys bus pateikti į pavadintą PHP failą galia.php apskaičiuoti x į valdžią n. Kurti galia.php failas su tokiu scenarijumi. Jis patikrins, ar HTML formos lauko reikšmės yra nustatytos, ar ne. Jei reikšmės pateikiamos teisingai, bus apskaičiuotas x iki galios n, o scenarijus lauks 2 sekundes. Po 2 sekundžių pasirodys įspėjimo langelis. Pasirodžius kitai formai su žymimuoju laukeliu, paprašys vartotojo pakartoti tą pačią užduotį spustelėjus įspėjimo langelio mygtuką Gerai.

galia.php

// Patikrinkite, ar x ir n reikšmės yra nustatytos, ar ne
jei (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ flag = klaidinga;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// Apskaičiuokite x iki galios n
$ rezultatas = pow ($ x, $ n);
// Atspausdinkite rezultatą
aidas "$ x iki galios $ n yra $ rezultatas
";
// Parodykite formą, jei norite pakartoti užduotį dar kartą
aidas '
Atlikite užduotį dar kartą
";
// Palaukite dvi sekundes
usleep (2000000);
// Rodyti įspėjimą
aidas "perspėjimas (" Laukiama 2 sekundes ... ")";

Kitas

jei (!rinkinys ($ _ POST ['ok']))
įtraukti ('forma1.html ');
Kitas

// Pakartokite užduotį dar kartą, jei žymimasis laukelis yra įjungtas
jei (isset ($ _ POST ['task']))
jei ($ _ POST ['task'] == 'on')
įtraukti ('forma1.html ');
Kitas
die ("Scenarijus nutraukiamas.");

Kitas
die ("Scenarijus nutraukiamas.");


?>

Išvestis:

Ši forma bus rodoma paleidus PHP scenarijų iš serverio. Išvestyje 4 yra nustatyta x reikšmė, o 3 - n.

Pateikus formą, scenarijus apskaičiuos 43 ir palaukite 2 sekundes, kol pasirodys įspėjimo langelis.


Pasirodys tokia forma, kad pasirinktumėte parinktį vėl rodyti ankstesnę formą, kad apskaičiuotumėte kitos vertės reikšmę x ir n paspaudus mygtuką Gerai.

Jei vartotojas paspaus Gerai mygtukas nepasirinkus žymės langelio, scenarijus bus nutrauktas rodant šį pranešimą.

Išvada:

Kai programavimo tikslais PHP scenarijui reikia atidėlioti tam tikrą laikotarpį, užduoties atlikimui galima naudoti funkciją „usleep“). Funkcija „usleep“ () šioje instrukcijoje buvo paaiškinta naudojant įvairius pavyzdžius, kad skaitytojai žinotų, kaip sugeneruoti scenarijų vėlavimą. Miego režimas () yra dar viena integruota PHP funkcija, sukurta scenarijuje.

Žymeklis peršoka arba juda atsitiktinai, kai rašote „Windows 10“
Jei pastebite, kad pelės žymeklis peršoka arba juda pats, automatiškai, atsitiktinai, kai vedate „Windows“ nešiojamąjį kompiuterį ar kompiuterį, kai k...
Kaip pakeisti pelės ir jutiklinių plokščių slinkimo kryptį sistemoje „Windows 10“
Pelė ir Jutiklinė dalisTai ne tik palengvina skaičiavimus, bet ir efektyvesnį bei mažiau laiko reikalaujantį. Mes neįsivaizduojame gyvenimo be šių pri...
Kaip pakeisti pelės žymeklio ir žymeklio dydį, spalvą ir schemą sistemoje „Windows 10“
„Windows 10“ pelės žymeklis ir žymeklis yra labai svarbūs operacinės sistemos aspektai. Tai galima pasakyti ir apie kitas operacines sistemas, taigi, ...