php

Uporaba funkcije usleep () v PHP

Uporaba funkcije usleep () v PHP

V PHP se v glavnem uporabljata dve funkciji, ki za nekaj časa odložijo izvajanje skripta. To sta usleep () in sleep (). Funkcija usleep () se uporablja za zakasnitev izvajanja skripta za določene mikrosekunde. Ta funkcija lahko povzroči izjemo, če je navedena negativna vrednost mikrosekund. Ta funkcija porabi cikel procesorja tudi, ko je poklican. Kako je to funkcijo mogoče uporabiti v PHP, je prikazano v tej vadnici.

Sintaksa:

Sintaksa te funkcije je podana spodaj.

prazno uspavanje (int mikrosekunde)

Ta funkcija vzame vrednost mikrosekund kot argumentov funkcije, ki se uporabljajo za zakasnitev skripta, kjer se ta funkcija uporablja. Ta funkcija ne vrne ničesar. Različne uporabe te funkcije so prikazane spodaj z različnimi primeri.

Primer-1: Uporabite usleep (), da počakate 5 sekund

Naslednji primer prikazuje, kako lahko s pomočjo usleep () nastavite zakasnitev za 5 sekund v skriptu. Ustvarite datoteko PHP z naslednjim skriptom. funkcija date () se v skriptu uporablja za branje trenutnega datuma in ure. funkcija usleep () se pokliče po izvedbi prve funkcije date (). 5 sekund je enako 5000000 mikrosekund. Torej, 5000000 se uporablja kot vrednost argumenta usleep () za nastavitev zakasnitve za 5 sekund. Nato se znova prikliče funkcija date ().

// Prikaz trenutnega datuma in ure
datum odmeva ('d F, Y h: i: s a'). "
";
// Natisni sporočilo
echo "Čakanje 5 sekund ..
";
// Zamujamo izvajanje skripta za 5 sekund
zaspan (5000000);
 
// Prikaz trenutnega datuma in ure
datum odmeva ('d F, Y h: i: s a'). "
";
?>

Izhod

Skript bo po zagonu s strežnika čakal 5 sekund. Rezultat kaže, da se je skript začel izvajati ob 05:32:05, skript pa se je končal ob 05:32:11. Torej, pred prikazom izhoda je minilo 5 sekund.

Primer-2: Uporabite usleep () za čakanje na naključne čase

Naslednji primer prikazuje, kako lahko s pomočjo funkcij usleep () in rand () nastavimo zakasnitev za naključno število krat. Ustvarite datoteko PHP z naslednjim skriptom. Funkcija first date () v skriptu bo prebrala trenutni sistemski čas. Nato se funkcija rand () uporablja za generiranje števila med 1000000 in 4000000, ustvarjena naključna vrednost pa bo uporabljena kot vrednost argumenta funkcije usleep (). Ustvarjeno naključno število bo deljeno s 1000000 in uporabljeno v funkciji round (), da dobimo čas zakasnitve v sekundah. Druga funkcija date () se uporablja za branje časovne vrednosti po izvedbi funkcije usleep ().

// Prikaži trenutni čas
datum odmeva ('h: i: s a'). "
";
// Nastavimo vrednost naključnih mikrosekund
$ zamuda = rand (1000000,4000000);
// Zamujamo izvajanje skripta za določene sekunde
uspavanje ($ zamuda);
// Pretvorimo mikrosekunde v sekunde
$ sekund = krog ($ zamik / 1000000);
// Natisni sporočilo
echo "Čakanje na $ sekund sekund ..
";
// Prikaži trenutni čas
datum odmeva ('h: i: s a'). "
";
?>

Izhod

Glede na naslednji izhod je skript po zagonu v strežniku čakal 4 sekunde. Rezultat kaže, da se je skript začel izvajati ob 05:35:40, skript pa se je končal ob 05:35:44. Torej, skript je zamujal za 4 sekunde.

Primer-3: Ponovite skript po 2 sekundah

Naslednji primer prikazuje, kako je mogoče isti skript ponoviti po 2 sekundah zakasnitve na podlagi izbire uporabnika. Ustvarite datoteko HTML z imenom obrazec1.html z naslednjim skriptom, da prevzame vrednost x in n.

obrazec1.html




Uporaba funkcije usleep ()



Vnesite vrednost x:

Vnesite vrednost n:




Podatki obrazca bodo poslani v poimenovano datoteko PHP moč.php za izračun x na moč n. Ustvari moč.php datoteko z naslednjim skriptom. Preveril bo, ali so vrednosti polja obrazca HTML nastavljene ali ne. Če so vrednosti pravilno oddane, potem x v moč n bo izračunana, skript pa bo počakal 2 sekundi. Po 2 sekundah se prikaže opozorilno polje. Pojavil se bo drug obrazec s potrditvenim poljem, v katerem bo uporabnik pozval k ponovitvi iste naloge po kliku gumba V redu na opozorilnem polju.

moč.php

// Preverite, ali sta vrednosti x in n nastavljeni ali ne
if (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ zastava = napačno;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// izračunamo x na stopnjo n
$ rezultat = pow ($ x, $ n);
// Natisni rezultat
echo "$ x v moč $ n je $ rezultat
";
// Prikažite obrazec za ponovitev naloge ali ne
odmev
Nalogo opravite znova
';
// Počakajte dve sekundi
zaspan (2000000);
// Prikaži opozorilo
echo "opozorilo ('Čakano 2 sekundi ...')";

drugače

če (!isset ($ _ POST ['ok']))
vključi ('obrazec1.html ');
drugače

// Če je potrditveno polje vklopljeno, znova ponovite nalogo
if (isset ($ _ POST ['task'])))
če ($ _ POST ['task'] == 'on')
vključi ('obrazec1.html ');
drugače
die ("Skript je zaključen.");

drugače
die ("Skript je zaključen.");


?>

Izhod

Naslednji obrazec se prikaže po zagonu skripta PHP s strežnika. V izhodu je 4 nastavljena na vrednost x, 3 pa na n.


Po oddaji obrazca bo skript izračunalin počakajte 2 sekundi, preden se prikaže opozorilno polje.

Naslednji obrazec se prikaže za izbiro možnosti ponovnega prikaza prejšnjega obrazca za izračun moči druge vrednosti x in n po pritisku gumba OK.


Če uporabnik pritisne v redu brez izbire potrditvenega polja, bo skript zaključen s prikazom naslednjega sporočila.

Zaključek

Ko skript PHP zahteva zakasnitev za določeno obdobje za namene programiranja, lahko funkcijo usleep () uporabimo za nalogo. Funkcija usleep () je bila v tej vadnici razložena z različnimi primeri, ki bralcem pomagajo vedeti, kako ustvariti zamudo v skriptu. Sleep () je še ena vgrajena funkcija PHP, ki se razvija v skriptu.

Odprtokodna vrata komercialnih igralnih sistemov
Brezplačne, odprtokodne in medplatformacijske igre, ki jih lahko uporabite za igranje starih, pa tudi nekaterih dokaj nedavnih naslovov iger. V tem čl...
Najboljše igre ukazne vrstice za Linux
Ukazna vrstica ni le vaš največji zaveznik pri uporabi Linuxa - lahko je tudi vir zabave, saj jo lahko uporabljate za igranje številnih zabavnih iger,...
Najboljše aplikacije za preslikavo gamepadov za Linux
Če želite igre na Linuxu igrati z igralno ploščico namesto s tipičnim sistemom za vnos tipkovnice in miške, je za vas na voljo nekaj uporabnih aplikac...