php

Funkcijas usleep () izmantošana PHP

Funkcijas usleep () izmantošana PHP
Lai kādu laiku aizkavētu skripta izpildi, PHP galvenokārt tiek izmantotas divas funkcijas. Tie ir miegs () un miegs (). Funkcija usleep () tiek izmantota, lai aizkavētu skripta izpildi noteiktām mikrosekundēm. Šī funkcija var radīt izņēmumu, ja tiek norādīta negatīva mikrosekundes vērtība. Šī funkcija patērē CPU ciklu arī tad, kad to izsauc. Kā šo funkciju var izmantot PHP, ir parādīts šajā apmācībā.

Sintakse:

Šīs funkcijas sintakse ir dota tālāk.

anulēt miegu (mikrosekundēs)

Šī funkcija ņem mikrosekundes vērtību kā funkcijas argumentus, ko izmanto, lai aizkavētu skriptu, kur tiek izmantota šī funkcija. Šī funkcija neko neatgriež. Dažādi šīs funkcijas izmantošanas veidi ir parādīti zemāk, izmantojot dažādus piemērus.

1. piemērs: usleep () izmantošana, lai pagaidītu 5 sekundes

Šis piemērs parāda, kā usleep () var izmantot, lai skriptā iestatītu kavēšanos uz 5 sekundēm. Izveidojiet PHP failu ar šādu skriptu. date () funkcija tiek izmantota skriptā, lai nolasītu pašreizējo datumu un laiku. Funkcija usleep () tiek izsaukta pēc pirmās datuma () funkcijas izpildes. 5 sekundes ir vienādas ar 5000000 mikrosekundēm. Tātad 5000000 tiek izmantots kā argumenta usleep () vērtība, lai iestatītu kavēšanos uz 5 sekundēm. Pēc tam funkcija date () tiek izsaukta vēlreiz.

// Parādīt pašreizējo datumu un laiku
atbalss datums ('d F, Y h: i: s a'). "
";
// Izdrukājiet ziņojumu
atbalss "Gaida 5 sekundes ..
";
// Aizkavējiet skripta izpildi par 5 sekundēm
usleep (5000000);
// Parādīt pašreizējo datumu un laiku
atbalss datums ('d F, Y h: i: s a'). "
";
?>

Izeja:


Pēc izpildes no servera skripts gaidīs 5 sekundes. Rezultāts parāda, ka skripts sāka izpildi plkst. 05:32:05 un skripts tika pārtraukts plkst. 05:32:11. Tātad, pirms izejas parādīšanas ir pagājušas 5 sekundes.

2. piemērs: usleep () izmantošana, lai gaidītu nejaušus laikus

Šis piemērs parāda, kā funkcijas usleep () un rand () var izmantot, lai iestatītu aizturi nejaušam reižu skaitam. Izveidojiet PHP failu ar šādu skriptu. Skripta pirmā datuma () funkcija nolasīs pašreizējo sistēmas laiku. Pēc tam funkcija rand () tiek izmantota, lai ģenerētu skaitli no 1000000 līdz 4000000, un ģenerētā gadījuma vērtība tiks izmantota kā funkcijas usleep () argumenta vērtība. Ģenerētais nejaušais skaitlis tiks dalīts ar 1000000 un tiks izmantots round () funkcijā, lai iegūtu aizkaves laiku sekundēs. Otrā datuma () funkcija tiek izmantota laika vērtības nolasīšanai pēc funkcijas usleep () izpildes.

// Parādīt pašreizējo laiku
atbalss datums ('h: i: s a'). "
";
// Iestatiet nejaušas mikrosekundes vērtību
$ aizkavēšanās = rand (1000000,4000000);
// Aizkavēt skripta izpildi noteiktām sekundēm
usleep ($ kavēšanās);
// Pārvērst mikrosekundes sekundēs
$ sekundes = apaļa ($ kavēšanās / 1000000);
// Izdrukājiet ziņojumu
atbalss "Gaida $ sekundes sekundes ..
";
// Parādīt pašreizējo laiku
atbalss datums ('h: i: s a'). "
";
?>

Izeja:

Saskaņā ar šādu izvadi skripts gaidīja 4 sekundes pēc izpildes serverī. Rezultāts parāda, ka skripts sāka izpildi plkst. 05:35:40 un skripts tika pārtraukts plkst. 05:35:44. Tātad skripts ir aizkavējies par 4 sekundēm.

3. piemērs: atkārtojiet skriptu pēc 2 sekundēm

Šis piemērs parāda, kā vienu un to pašu skriptu var atkārtot pēc 2 sekunžu kavēšanās, pamatojoties uz lietotāja izvēli. Izveidojiet HTML failu ar nosaukumu forma1.html ar šādu skriptu, lai ņemtu vērtību x un n.

forma1.html


Funkcijas aizmigšana () izmantošana
Ievadiet x vērtību:

Ievadiet n vērtību:

Veidlapas dati tiks iesniegti nosauktajā PHP failā jauda.php lai aprēķinātu x pie varas n. Izveidot jauda.php failu ar šādu skriptu. Tas pārbaudīs, vai HTML formas lauka vērtības ir iestatītas vai nav iestatītas. Ja vērtības ir pareizi iesniegtas, tiks aprēķināts x līdz jaudai n, un skripts gaidīs 2 sekundes. Pēc 2 sekundēm parādīsies brīdinājuma lodziņš. Pēc noklikšķināšanas uz brīdinājuma lodziņa pogas Labi parādīsies cita veidlapa ar izvēles rūtiņu, kurā lietotājam tiks lūgts atkārtot to pašu uzdevumu.

jauda.php

// Pārbaudiet, vai x un n vērtības ir iestatītas vai nav iestatītas
ja (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ flag = nepatiesa;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// Aprēķiniet x līdz jaudai n
$ rezultāts = pow ($ x, $ n);
// Izdrukājiet rezultātu
atbalss "$ x spēkam $ n ir $ rezultāts
";
// Parādiet veidlapu, lai atkārtotu uzdevumu vai nē
atbalss '
Veiciet uzdevumu vēlreiz
";
// Pagaidiet divas sekundes
aizmigt (2000000);
// Parādīt brīdinājumu
atbalss "brīdinājums ('Gaidīts 2 sekundes ...')";

cits

ja (!isset ($ _ POST ['ok']))
iekļaut ('forma1.html ');
cits

// Atkārtojiet uzdevumu vēlreiz, ja izvēles rūtiņa ir ieslēgta
ja (isset ($ _ POST ['uzdevums']))
ja ($ _ POST ['uzdevums'] == 'ieslēgts')
iekļaut ('forma1.html ');
cits
die ("Skripts ir pārtraukts.");

cits
die ("Skripts ir pārtraukts.");


?>

Izeja:

Pēc PHP skripta palaišanas no servera parādīsies šāda veidlapa. Izejā 4 ir iestatīts x vērtībai un 3 ir n.

Pēc veidlapas iesniegšanas skripts aprēķinās 43 un pagaidiet 2 sekundes, pirms tiek parādīts brīdinājumu lodziņš.


Parādīsies šāda veidlapa, lai atlasītu opciju atkal parādīt iepriekšējo veidlapu, lai aprēķinātu citas vērtības vērtību x un n pēc pogas Labi nospiešanas.

Ja lietotājs nospiež labi poga, neatzīmējot izvēles rūtiņu, skripts tiks pārtraukts, parādot šādu ziņojumu.

Secinājums:

Kad PHP skripts programmēšanas nolūkos prasa noteiktu laiku, tad uzdevuma veikšanai var izmantot funkciju usleep (). Funkcija usleep () šajā apmācībā ir izskaidrota, izmantojot dažādus piemērus, lai palīdzētu lasītājiem uzzināt, kā radīt aizkavēšanos skriptā. Miega režīms () ir vēl viena PHP iebūvēta funkcija, kas jāizstrādā skriptā.

WinMouse ļauj jums pielāgot un uzlabot peles rādītāja kustību Windows datorā
Ja vēlaties uzlabot peles rādītāja noklusējuma funkcijas, izmantojiet bezmaksas programmatūru WinMouse. Tas pievieno vairāk funkciju, kas palīdzēs jum...
Peles kreisā klikšķa poga nedarbojas operētājsistēmā Windows 10
Ja ar klēpjdatoru vai galddatoru izmantojat īpašu peli, bet nedarbojas peles kreisās klikšķa poga kādu iemeslu dēļ operētājsistēmā Windows 10/8/7 šeit...
Rakstot Windows 10, kursors lec vai pārvietojas nejauši
Ja atklājat, ka peles kursors automātiski, nejauši lec vai pārvietojas pats, rakstot Windows klēpjdatorā vai datorā, daži no šiem ieteikumiem var palī...