php

Användning av usleep () -funktionen i PHP

Användning av usleep () -funktionen i PHP
Två funktioner används huvudsakligen i PHP för att fördröja körningen av skriptet under en tid. Dessa är usleep () och sleep (). Usleep () -funktionen används för att fördröja körningen av skriptet för specifika mikrosekunder. Denna funktion kan ge ett undantag om det negativa mikrosekundsvärdet anges. Denna funktion förbrukar CPU-cykeln även när den anropas. Hur denna funktion kan användas i PHP har visat i denna handledning.

Syntax:

Syntaxen för denna funktion ges nedan.

ogiltigt usleep (int mikrosekunder)

Denna funktion tar värdet av mikrosekunder som funktionsargument som används för att fördröja skriptet där den här funktionen används. Den här funktionen returnerar ingenting. De olika användningarna av denna funktion visas nedan med hjälp av olika exempel.

Exempel 1: Använd usleep () för att vänta 5 sekunder

Följande exempel visar hur usleep () kan användas för att ställa in fördröjningen i 5 sekunder i skriptet. Skapa en PHP-fil med följande skript. funktionen () används i skriptet för att läsa aktuellt datum och tid. usleep () -funktionen anropas efter att första datumet () har utförts. 5 sekunder är lika med 5000000 mikrosekunder. Så 5000000 används som argumentvärdet usleep () för att ställa in fördröjningen i 5 sekunder. Därefter anropas datum () -funktionen igen.

// Visa aktuellt datum och tid
ekodatum ('d F, Y h: i: s a'). "
";
// Skriv ut meddelandet
eko "Väntar i 5 sekunder ..
";
// Fördröja utförandet av skriptet i 5 sekunder
sova (5000000);
// Visa aktuellt datum och tid
ekodatum ('d F, Y h: i: s a'). "
";
?>

Produktion:


Skriptet väntar i 5 sekunder efter att det har körts från servern. Utdata visar att skriptet startade körningen kl 05:32:05 och skriptet avslutades kl 05:32:11. Så det har gått 5 sekunder innan utmatningen visas.

Exempel 2: Använd usleep () för att vänta på slumpmässiga tider

Följande exempel visar hur usleep () och rand () -funktionerna kan användas för att ställa in fördröjningen för slumpmässigt antal gånger. Skapa en PHP-fil med följande skript. Skriptets första datum () läser den aktuella systemtiden. Därefter används rand () -funktionen för att generera ett tal mellan 1000000 och 4000000, och det genererade slumpmässiga värdet kommer att användas som argumentvärdet för usleep () -funktionen. Det genererade slumptalet divideras med 1000000 och används i funktionen round () för att få fördröjningstiden i sekunder. Funktionen andra datum () används för att läsa av tidsvärdet efter att usleep () har utförts.

// Visa aktuell tid
ekodatum ('h: i: s a'). "
";
// Ställ in slumpmässigt mikrosekunder
$ fördröjning = rand (1000000,4000000);
// Fördröja körningen av skriptet under definierade sekunder
usleep ($ fördröjning);
// Konvertera mikrosekunderna till sekunder
$ sekunder = runda ($ fördröjning / 1000000);
// Skriv ut meddelandet
eko "Väntar i $ sekunder sekunder ..
";
// Visa aktuell tid
ekodatum ('h: i: s a'). "
";
?>

Produktion:

Enligt följande utgång väntade skriptet i 4 sekunder efter körning på servern. Utgången visar att manuset startade körningen 05:35:40 och manuset avslutades 05:35:44. Så manuset har försenats i 4 sekunder.

Exempel 3: Upprepa skriptet efter 2 sekunder

Följande exempel visar hur samma skript kan upprepas efter två sekunders fördröjning baserat på användarens val. Skapa en HTML-fil med namnet form1.html med följande skript för att ta värdet av x och n.

form1.html


Användning av usleep () -funktionen
Ange värdet på x:

Ange värdet på n:

Formulärets data skickas in i den namngivna PHP-filen kraft.php för att beräkna x till makten n. Skapa kraften.php fil med följande skript. Det kommer att kontrollera att fältvärdena för HTML-formuläret är inställda eller inte. Om värdena skickas in korrekt beräknas x till makten n och skriptet väntar i 2 sekunder. En varningsruta visas efter 2 sekunder. Ett annat formulär med en kryssruta kommer att uppmana användaren att upprepa samma uppgift efter att ha klickat på OK-knappen i varningsrutan.

kraft.php

// Kontrollera att värdena för x och n är inställda eller inte
if (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ flagga = falsk;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// Beräkna x till kraften n
$ resultat = pow ($ x, $ n);
// Skriv ut resultatet
eko "$ x till makten $ n är $ resultat
";
// Visa formuläret för att upprepa uppgiften igen eller inte
eko '
Gör uppgiften igen
';
// Vänta i två sekunder
sova (2000000);
// Visa varningen
echo "alert ('Waited for 2 seconds…')";

annan

om(!isset ($ _ POST ['ok']))
inkludera ('form1.html ');
annan

// Upprepa uppgiften igen om kryssrutan är på
if (isset ($ _ POST ['task']))
if ($ _ POST ['task'] == 'on')
inkludera ('form1.html ');
annan
die ("Manuset avslutas.");

annan
die ("Manuset avslutas.");


?>

Produktion:

Följande formulär visas när du kör PHP-skriptet från servern. I utgången är 4 inställt för värdet x och 3 är inställt för n.

Efter att formuläret har skickats beräknas manuset 43 och vänta i 2 sekunder innan du visar varningsrutan.


Följande formulär visas för att välja alternativet att visa föregående formulär igen för att beräkna effekten av ett annat värde på x och n efter att ha tryckt på OK-knappen.

Om användaren trycker på OK utan att markera kryssrutan, kommer skriptet att avslutas genom att följande meddelande visas.

Slutsats:

När PHP-skriptet kräver fördröjning under en viss period för programmeringsändamål kan usleep () -funktionen användas för att utföra uppgiften. Usleep () -funktionen har förklarats i denna handledning genom att använda olika exempel för att hjälpa läsarna att veta hur man genererar en fördröjning i skriptet. Sleep () är en annan inbyggd funktion för PHP att utvecklas i skriptet.

HD Remastered Games för Linux som aldrig tidigare hade en Linux-version
Många spelutvecklare och utgivare kommer med HD-remaster av gamla spel för att förlänga livstiden för franchisen, snälla fans som begär kompatibilitet...
Hur man använder AutoKey för att automatisera Linux-spel
AutoKey är ett verktyg för desktopautomatisering för Linux och X11, programmerat i Python 3, GTK och Qt. Med hjälp av dess skript och MACRO-funktional...
Hur man visar FPS-räknare i Linux-spel
Linux-spel fick ett stort tryck när Valve tillkännagav Linux-stöd för Steam-klient och deras spel 2012. Sedan dess har många AAA- och indiespel tagit ...