php

Brug af usleep () -funktion i PHP

Brug af usleep () -funktion i PHP

To funktioner bruges hovedsageligt i PHP til at forsinke udførelsen af ​​scriptet i nogen tid. Disse er usleep () og sleep (). Usleep () -funktionen bruges til at forsinke udførelsen af ​​scriptet i bestemte mikrosekunder. Denne funktion kan give en undtagelse, hvis den negative mikrosekundværdi er angivet. Denne funktion forbruger CPU-cyklussen, også når den kaldes. Hvordan denne funktion kan bruges i PHP har vist i denne vejledning.

Syntaks:

Syntaksen for denne funktion er angivet nedenfor.

ugyldigt usleep (int mikrosekunder)

Denne funktion tager mikrosekundværdien som funktionsargumenter, der bruges til at forsinke scriptet, hvor denne funktion bruges. Denne funktion returnerer intet. De forskellige anvendelser af denne funktion vises nedenfor ved hjælp af forskellige eksempler.

Eksempel 1: Brug af usleep () til at vente 5 sekunder

Følgende eksempel viser, hvordan usleep () kan bruges til at indstille forsinkelsen til 5 sekunder i scriptet. Opret en PHP-fil med følgende script. dato () funktion bruges i scriptet til at læse den aktuelle dato og tid. usleep () -funktion kaldes efter udførelse af den første dato () -funktion. 5 sekunder er lig med 5000000 mikrosekunder. Så 5000000 bruges som værdien usleep () til at indstille forsinkelsen i 5 sekunder. Derefter kaldes funktionen date () igen.

// Vis den aktuelle dato og tid
ekko dato ('d F, Y h: i: s a'). "
";
// Udskriv meddelelsen
ekko "Venter i 5 sekunder ..
";
// Forsink udførelsen af ​​scriptet i 5 sekunder
sove (5000000);
 
// Vis den aktuelle dato og tid
ekko dato ('d F, Y h: i: s a'). "
";
?>

Produktion

Scriptet venter i 5 sekunder, efter det er udført fra serveren. Outputtet viser, at scriptet startede udførelsen kl. 05:32:05, og scriptet blev afsluttet kl. 05:32:11. Så der er gået 5 sekunder, før output vises.

Eksempel 2: Brug af usleep () til at vente på tilfældige tider

Følgende eksempel viser, hvordan usleep () og rand () -funktioner kan bruges til at indstille forsinkelsen til det tilfældige antal gange. Opret en PHP-fil med følgende script. Den første dato () -funktion af scriptet læser den aktuelle systemtid. Derefter bruges funktionen rand () til at generere et tal mellem 1000000 og 4000000, og den genererede tilfældige værdi vil blive brugt som argumentværdien for usleep () -funktionen. Det genererede tilfældige tal divideres med 1000000 og bruges i funktionen round () for at få forsinkelsestiden i sekunder. Den anden dato () funktion bruges til at læse tidsværdien efter udførelse af usleep () funktionen.

// Vis det aktuelle klokkeslæt
ekko dato ('h: i: s a'). "
";
// Indstil værdien for tilfældige mikrosekunder
$ forsinkelse = rand (1000000,4000000);
// Forsink udførelsen af ​​scriptet i definerede sekunder
usleep ($ forsinkelse);
// Konverter mikrosekunder til sekunder
$ sekunder = runde ($ forsinkelse / 1000000);
// Udskriv meddelelsen
ekko "Venter på $ sekunder sekunder ..
";
// Vis det aktuelle klokkeslæt
ekko dato ('h: i: s a'). "
";
?>

Produktion

I henhold til følgende output ventede scriptet i 4 sekunder efter udførelse på serveren. Outputtet viser, at scriptet startede udførelsen kl 05:35:40, og scriptet afsluttedes kl 05:35:44. Så scriptet er blevet forsinket i 4 sekunder.

Eksempel 3: Gentag scriptet efter 2 sekunder

Følgende eksempel viser, hvordan det samme script kan gentages efter 2 sekunders forsinkelse baseret på brugerens valg. Opret en HTML-fil med navnet form1.html med følgende script til at tage værdien af x og n.

form1.html




Brug af usleep () -funktionen



Indtast værdien af ​​x:

Indtast værdien af ​​n:




Formularens data indsendes i den navngivne PHP-fil strøm.php at beregne x til magt n. Opret strøm.php fil med følgende script. Det kontrollerer feltværdierne for HTML-formularen er indstillet eller ej. Hvis værdierne er korrekt indsendt, så x til magten n beregnes, og scriptet venter i 2 sekunder. En advarselsboks vises efter 2 sekunder. En anden form med et afkrydsningsfelt vises for at bede brugeren om at gentage den samme opgave efter at have klikket på OK-knappen i alarmfeltet.

strøm.php

// Kontroller, at værdierne for x og n er indstillet eller ej
hvis (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ flag = falsk;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// Beregn x til magt n
$ resultat = pow ($ x, $ n);
// Udskriv resultatet
ekko "$ x til magten $ n er $ resultat
";
// Vis formularen for at gentage opgaven igen eller ej
ekko '
Udfør opgaven igen
';
// Vent i to sekunder
sove (2000000);
// Vis advarslen
ekko "alarm ('Ventede i 2 sekunder ...')";

andet

hvis(!isset ($ _ POST ['ok']))
inkluderer ('form1.html ');
andet

// Gentag opgaven igen, hvis afkrydsningsfeltet er aktiveret
hvis (isset ($ _ POST ['opgave']))
hvis ($ _ POST ['task'] == 'on')
inkluderer ('form1.html ');
andet
die ("Scriptet er afsluttet.");

andet
die ("Scriptet er afsluttet.");


?>

Produktion

Følgende formular vises efter kørsel af PHP-scriptet fra serveren. I output er 4 indstillet til værdien af ​​x, og 3 er indstillet til n.


Efter indsendelse af formularen beregnes scriptetog vent i 2 sekunder, før du får vist advarselsboksen.

Følgende formular vises for at vælge muligheden for at få vist den forrige formular igen for at beregne effekten af ​​en anden værdi på x og n efter at have trykket på OK-knappen.


Hvis brugeren trykker på Okay uden at markere afkrydsningsfeltet, afsluttes scriptet ved at vise følgende meddelelse.

Konklusion

Når PHP-scriptet kræver forsinkelse i en bestemt periode til programmeringsformål, kan usleep () -funktionen bruges til at udføre opgaven. Usleep () -funktionen er blevet forklaret i denne vejledning ved hjælp af forskellige eksempler for at hjælpe læserne med at vide, hvordan man genererer en forsinkelse i scriptet. Sleep () er en anden indbygget funktion af PHP, der skal udvikles i scriptet.

Sådan vises FPS-tæller i Linux-spil
Linux-spil fik et stort skub, da Valve annoncerede Linux-support til Steam-klient og deres spil i 2012. Siden da har mange AAA- og indiespil fundet ve...
Sådan downloades og afspilles Sid Meiers Civilization VI på Linux
Introduktion til spillet Civilization 6 er et moderne udtryk for det klassiske koncept, der blev introduceret i serien af ​​Age of Empires-spil. Ideen...
Sådan installeres og afspilles Doom på Linux
Introduktion til undergang Doom-serien opstod i 90'erne efter frigivelsen af ​​den originale Doom. Det var et øjeblikkeligt hit, og fra den tid af har...