php

Penggunaan fungsi usleep () dalam PHP

Penggunaan fungsi usleep () dalam PHP

Dua fungsi digunakan terutamanya dalam PHP untuk menunda pelaksanaan skrip untuk beberapa waktu. Ini adalah tidur () dan tidur (). Fungsi usleep () digunakan untuk menunda pelaksanaan skrip untuk mikrodetik tertentu. Fungsi ini dapat memberikan pengecualian jika nilai mikrodetik negatif diberikan. Fungsi ini memakan kitaran CPU juga ketika dipanggil. Bagaimana fungsi ini dapat digunakan dalam PHP telah ditunjukkan dalam tutorial ini.

Sintaks:

Sintaks fungsi ini diberikan di bawah.

batal tidur (int mikrodetik)

Fungsi ini mengambil nilai mikrodetik sebagai argumen fungsi yang digunakan untuk menunda skrip di mana fungsi ini digunakan. Fungsi ini tidak mengembalikan apa-apa. Pelbagai kegunaan fungsi ini ditunjukkan di bawah dengan menggunakan pelbagai contoh.

Contoh-1: Penggunaan usleep () untuk menunggu 5 saat

Contoh berikut menunjukkan bagaimana usleep () dapat digunakan untuk menetapkan kelewatan selama 5 saat dalam skrip. Buat fail PHP dengan skrip berikut. fungsi date () digunakan dalam skrip untuk membaca tarikh dan masa semasa. fungsi usleep () dipanggil setelah menjalankan fungsi tarikh pertama (). 5 saat bersamaan 5000000 mikrodetik. Jadi, 5000000 digunakan sebagai nilai argumen usleep () untuk menetapkan kelewatan selama 5 saat. Seterusnya, fungsi tarikh () dipanggil sekali lagi.

// Paparkan tarikh dan masa semasa
tarikh gema ('d F, Y h: i: s a'). "
";
// Cetak mesej
gema "Menunggu 5 saat ..
";
// Menunda pelaksanaan skrip selama 5 saat
usleep (5000000);
 
// Paparkan tarikh dan masa semasa
tarikh gema ('d F, Y h: i: s a'). "
";
?>

Pengeluaran

Skrip akan menunggu selama 5 saat setelah melaksanakannya dari pelayan. Hasilnya menunjukkan bahawa skrip memulakan pelaksanaan pada 05:32:05 pagi, dan skrip berakhir pada 05:32:11 pagi. Jadi, 5 saat telah berlalu sebelum memaparkan output.

Contoh-2: Penggunaan usleep () untuk menunggu masa secara rawak

Contoh berikut menunjukkan bagaimana fungsi usleep () dan rand () dapat digunakan untuk menetapkan kelewatan untuk sebilangan kali rawak. Buat fail PHP dengan skrip berikut. Fungsi tarikh pertama () skrip akan membaca masa sistem semasa. Selanjutnya, fungsi rand () digunakan untuk menghasilkan angka antara 1000000 dan 4000000, dan nilai rawak yang dihasilkan akan digunakan sebagai nilai argumen fungsi usleep (). Nombor rawak yang dihasilkan akan dibahagi dengan 1000000 dan digunakan dalam fungsi putaran () untuk mendapatkan masa kelewatan dalam beberapa saat. Fungsi tarikh kedua () digunakan untuk membaca nilai waktu setelah menjalankan fungsi usleep ().

// Paparkan masa semasa
tarikh gema ('h: i: s a'). "
";
// Tetapkan nilai mikrodetik rawak
$ delay = rand (1000000,4000000);
// Menunda pelaksanaan skrip untuk detik yang ditentukan
usleep (kelewatan $);
// Tukarkan mikrodetik menjadi beberapa saat
$ saat = pusingan ($ delay / 1000000);
// Cetak mesej
gema "Menunggu $ saat saat ..
";
// Paparkan masa semasa
tarikh gema ('h: i: s a'). "
";
?>

Pengeluaran

Mengikut output berikut, skrip menunggu selama 4 saat setelah dijalankan di pelayan. Hasilnya menunjukkan bahawa skrip memulakan pelaksanaan pada 05:35:40 pagi, dan skrip ditamatkan pada 05:35:44 pagi. Jadi, skrip telah ditangguhkan selama 4 saat.

Contoh-3: Ulangi skrip selepas 2 saat

Contoh berikut menunjukkan bagaimana skrip yang sama dapat diulang setelah penundaan 2 saat berdasarkan pilihan pengguna. Buat fail HTML bernama bentuk1.html dengan skrip berikut untuk mengambil nilai x dan n.

bentuk1.html




Penggunaan fungsi usleep ()



Masukkan nilai x:

Masukkan nilai n:




Data borang akan diserahkan ke dalam file PHP yang diberi nama kuasa.php untuk mengira x hingga daya n. Buat kuasa.php fail dengan skrip berikut. Ia akan memeriksa nilai medan bentuk HTML yang ditetapkan atau tidak. Sekiranya nilai diserahkan dengan betul, maka x ke kuasa n akan dikira, dan skrip akan menunggu selama 2 saat. Kotak amaran akan muncul selepas 2 saat. Bentuk lain dengan kotak centang akan muncul untuk meminta pengguna mengulangi tugas yang sama setelah mengklik butang OK pada kotak amaran.

kuasa.php

// Periksa nilai x dan n ditetapkan atau tidak
jika (isset ($ _ POST ['x']) && isset ($ _ POST ['n']))

$ bendera = palsu;
$ x = $ _POST ['x'];
$ n = $ _POST ['n'];
// Hitungkan x ke daya n
$ hasil = pow ($ x, $ n);
// Cetak hasilnya
gema "$ x ke daya $ n adalah hasil $
";
// Paparkan borang untuk mengulangi tugas itu lagi atau tidak
gema '
Lakukan tugas itu sekali lagi
';
// Tunggu selama dua saat
usleep (2000000);
// Paparkan amaran
echo "alert ('Menunggu 2 saat ...')";

yang lain

sekiranya (!terbitan ($ _ POST ['ok']))
sertakan ('form1.html ');
yang lain

// Ulangi tugas sekali lagi jika kotak centang dihidupkan
jika (isset ($ _ POST ['task']))
jika ($ _ POST ['task'] == 'on')
sertakan ('form1.html ');
yang lain
die ("Skrip ditamatkan.");

yang lain
die ("Skrip ditamatkan.");


?>

Pengeluaran

Bentuk berikut akan muncul setelah menjalankan skrip PHP dari pelayan. Dalam output, 4 ditetapkan untuk nilai x, dan 3 ditetapkan untuk n.


Setelah menghantar borang, skrip akan dikiradan tunggu selama 2 saat sebelum memaparkan kotak amaran.

Bentuk berikut akan muncul untuk memilih pilihan untuk memaparkan bentuk sebelumnya sekali lagi untuk mengira kekuatan nilai lain dari x dan n setelah menekan butang OK.


Sekiranya pengguna menekan okey butang tanpa memilih kotak centang, skrip akan dihentikan dengan menampilkan pesan berikut.

Kesimpulannya

Apabila skrip PHP memerlukan penundaan untuk jangka waktu tertentu untuk tujuan pengaturcaraan, maka fungsi usleep () dapat digunakan untuk melakukan tugas. Fungsi usleep () telah dijelaskan dalam tutorial ini dengan menggunakan pelbagai contoh untuk membantu pembaca mengetahui bagaimana menghasilkan kelewatan skrip. Sleep () adalah fungsi PHP bawaan lain untuk dikembangkan dalam skrip.

Butang tetikus tengah tidak berfungsi pada Windows 10
The butang tetikus tengah membantu anda menelusuri halaman web dan skrin yang panjang dengan banyak data. Sekiranya ia berhenti, anda akan menggunakan...
Cara menukar butang tetikus Kiri & Kanan pada PC Windows 10
Sudah menjadi kebiasaan bahawa semua peranti tetikus komputer dirancang secara ergonomik untuk pengguna tangan kanan. Tetapi ada peranti tetikus yang ...
Tiru klik Tetikus dengan melayang menggunakan Mouse Tanpa Klik di Windows 10
Menggunakan tetikus atau papan kekunci dalam keadaan salah penggunaan berlebihan boleh menyebabkan banyak masalah kesihatan, termasuk ketegangan, sind...