php

Utilizarea funcției usleep () în PHP

Utilizarea funcției usleep () în PHP
Două funcții sunt utilizate în principal în PHP pentru a întârzia execuția scriptului pentru o perioadă de timp. Acestea sunt usleep () și sleep (). Funcția usleep () este utilizată pentru a întârzia execuția scriptului pentru microsecunde specifice. Această funcție poate genera o excepție dacă este furnizată valoarea negativă a microsecundelor. Această funcție consumă ciclul CPU și atunci când este apelată. Modul în care această funcție poate fi utilizată în PHP a arătat în acest tutorial.

Sintaxă:

Sintaxa acestei funcții este dată mai jos.

nul usleep (int microsecunde)

Această funcție ia valoarea microsecundelor ca argumente ale funcției utilizate pentru a întârzia scriptul în care este utilizată această funcție. Această funcție nu returnează nimic. Diferitele utilizări ale acestei funcții sunt prezentate mai jos folosind diverse exemple.

Exemplu-1: Utilizarea usleep () pentru a aștepta 5 secunde

Următorul exemplu arată cum se poate utiliza usleep () pentru a seta întârzierea pentru 5 secunde în script. Creați un fișier PHP cu următorul script. funcția date () este utilizată în script pentru a citi data și ora curente. funcția usleep () este apelată după executarea primei funcții date (). 5 secunde este egal cu 5000000 microsecunde. Deci, 5000000 este folosit ca valoarea argumentului usleep () pentru a seta întârzierea pentru 5 secunde. Apoi, funcția date () este apelată din nou.

// Afișează data și ora curente
data ecoului ('d F, Y h: i: s a'). "
";
// Imprimați mesajul
ecou „Se așteaptă 5 secunde ..
";
// Întârziți execuția scriptului timp de 5 secunde
usleep (5000000);
// Afișează data și ora curente
data ecoului ('d F, Y h: i: s a'). "
";
?>

Ieșire:


Scriptul va aștepta 5 secunde după executarea acestuia de pe server. Rezultatul arată că scriptul a început execuția la 05:32:05 dimineața, iar scriptul s-a încheiat la 05:32:11 am. Deci, au trecut 5 secunde înainte de afișarea ieșirii.

Exemplul-2: Utilizarea usleep () pentru a aștepta timpuri aleatorii

Următorul exemplu arată cum funcțiile usleep () și rand () pot fi utilizate pentru a seta întârzierea pentru numărul aleatoriu de ori. Creați un fișier PHP cu următorul script. Prima funcție date () a scriptului va citi ora curentă a sistemului. Apoi, funcția rand () este utilizată pentru a genera un număr între 1000000 și 4000000, iar valoarea aleatorie generată va fi utilizată ca valoare argument a funcției usleep (). Numărul aleatoriu generat va fi împărțit la 1000000 și utilizat în funcția round () pentru a obține timpul de întârziere în secunde. A doua funcție date () este utilizată pentru a citi valoarea timpului după executarea funcției usleep ().

// Afișați ora curentă
data ecoului ('h: i: s a'). "
";
// Setați valoarea aleatorie a microsecundelor
$ întârziere = rand (1000000,4000000);
// Întârziți execuția scriptului pentru secunde definite
usleep ($ întârziere);
// Convertiți microsecundele în secunde
$ secunde = rundă ($ întârziere / 1000000);
// Imprimați mesajul
ecou „Se așteaptă $ secunde secunde ..
";
// Afișați ora curentă
data ecoului ('h: i: s a'). "
";
?>

Ieșire:

Conform următoarei ieșiri, scriptul a așteptat 4 secunde după executarea în server. Rezultatul arată că scriptul a început execuția la 05:35:40 și că scriptul s-a încheiat la 05:35:44. Deci, scriptul a fost întârziat cu 4 secunde.

Exemplu-3: Repetați scriptul după 2 secunde

Următorul exemplu arată cum același script poate fi repetat după 2 secunde de întârziere pe baza selecției utilizatorului. Creați un fișier HTML numit forma1.html cu următorul script pentru a lua valoarea X și n.

forma1.html


Utilizarea funcției usleep ()
Introduceți valoarea lui x:

Introduceți valoarea lui n:

Datele formularului vor fi trimise în fișierul PHP numit putere.php pentru a calcula X la putere n. Crea puterea.php fișier cu următorul script. Se va verifica dacă valorile câmpului formularului HTML sunt setate sau nu. Dacă valorile sunt trimise corect, atunci se va calcula x la puterea n, iar scriptul va aștepta 2 secunde. După 2 secunde va apărea o casetă de alertă. Va apărea un alt formular cu o casetă de selectare pentru a cere utilizatorului să repete aceeași sarcină după ce faceți clic pe butonul OK din caseta de alertă.

putere.php

// Verificați dacă valorile lui x și n sunt setate sau nu
if (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ steag = fals;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// Calculați x la puterea n
$ result = pow ($ x, $ n);
// Imprimați rezultatul
ecou "$ x la puterea $ n este $ rezultat
";
// Afișați formularul pentru a repeta sau nu sarcina
ecou '
Faceți din nou sarcina
';
// Așteptați două secunde
usleep (2000000);
// Afișați alerta
echo "alert ('Așteptat 2 secunde ...')";

altceva

dacă(!isset ($ _ POST ['ok'])))
include ('formular1.html ');
altceva

// Repetați din nou sarcina dacă caseta de selectare este activată
if (isset ($ _ POST ['task'])))
if ($ _ POST ['task'] == 'on')
include ('formular1.html ');
altceva
die („Scriptul este terminat.");

altceva
die („Scriptul este terminat.");


?>

Ieșire:

Următorul formular va apărea după executarea scriptului PHP de pe server. În ieșire, 4 este setat pentru valoarea lui x și 3 este setat pentru n.

După trimiterea formularului, scriptul va calcula 43 și așteptați 2 secunde înainte de a afișa caseta de alertă.


Următorul formular va apărea pentru a selecta opțiunea de a afișa din nou formularul anterior pentru a calcula puterea unei alte valori de X și n după apăsarea butonului OK.

Dacă utilizatorul apasă pe O.K fără a bifa caseta de selectare, scriptul va fi terminat prin afișarea următorului mesaj.

Concluzie:

Când scriptul PHP necesită întârziere pentru o anumită perioadă în scopuri de programare, atunci funcția usleep () poate fi utilizată pentru a efectua sarcina. Funcția usleep () a fost explicată în acest tutorial utilizând diverse exemple pentru a ajuta cititorii să știe cum să genereze o întârziere în script. Sleep () este o altă funcție încorporată a PHP de dezvoltat în script.

Instalați cel mai recent joc de strategie OpenRA pe Ubuntu Linux
OpenRA este un motor de jocuri de strategie în timp real Libre / Free care recreează primele jocuri Westwood, cum ar fi clasicul Command & Conquer: Re...
Instalați cel mai recent Dolphin Emulator pentru Gamecube și Wii pe Linux
Emulatorul Dolphin vă permite să jucați jocurile alese de Gamecube și Wii pe computerele personale Linux (PC). Fiind un emulator de joc liber disponi...
Cum se folosește GameConqueror Cheat Engine în Linux
Articolul acoperă un ghid despre utilizarea sistemului de înșelăciune GameConqueror în Linux. Mulți utilizatori care joacă jocuri pe Windows folosesc ...