Bagaimana untuk melaksanakan had masa dalam php
Cara melaksanakan had masa dalam PHP: 1. Biarkan program dijalankan tanpa had melalui "set_time_limit(0)";
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.1, komputer DELL G3
Cara melaksanakan had masa dalam php?
Lima cara untuk melaksanakan tugas berjadual dalam PHP
Dalam beberapa hari lalu, saya perlu menggunakan PHP untuk menulis aplikasi pelayan yang kerap merangkak halaman web . Saya mencari penyelesaian di Internet dan menemui beberapa penyelesaian, yang diringkaskan seperti berikut.
Tugas berjalan berjadual ialah tugas yang agak penting untuk tapak web, seperti kerap menerbitkan dokumen, kerap membersihkan maklumat sampah, dll. Kebanyakan tapak web hari ini menggunakan bahasa dinamik PHP Dibangunkan, pelaksanaannya PHP menentukan bahawa ia tidak mempunyai konsep AppServer seperti Java dan .Net, dan protokol http ialah protokol tanpa kewarganegaraan PHP hanya boleh dicetuskan dan dipanggil oleh pengguna, ia akan keluar dari memori secara automatik. Tiada Residen dalam ingatan.
Jika anda perlu menggunakan PHP untuk melaksanakan tugas berjadual, anda boleh mendapatkan penyelesaian berikut:
1 jenis ringkas, langsung dan melulu
<?php ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行. set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去 ini_set('memory_limit','512M'); // 设置内存限制 $interval=60*30;// 每隔半小时运行 do{ //ToDo sleep($interval);// 等待5分钟 } while(true);
Kelemahan: Selepas. permulaan, Ia adalah mustahil untuk dikawal melainkan anda menamatkan hos PHP Jangan gunakan kaedah ini melainkan anda seorang penggodam.
2. >
cron.php<?php return 1; ?>
Hentikan program dengan menukar pulangan 0 konfigurasi .php. A Cara yang boleh dilaksanakan ialah berinteraksi dengan fail config.php dan borang khas, dan menetapkan beberapa pembolehubah melalui halaman HTML untuk konfigurasi Kelemahan: Ia mengambil sumber sistem, berjalan untuk masa yang lama , dan boleh menyebabkan beberapa bahaya tersembunyi yang tidak dijangka. Contohnya, isu pengurusan memori.
ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行. set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去 $interval=60*30;// 每隔半小时运行 do{ $run = include 'config.php'; if(!$run) die('process abort'); //ToDo sleep($interval);// 等待5分钟 } while(true);
3. Versi mudah yang dipertingkatkan
Skrip php terus dilaksanakan dengan mengakses dirinya sendiri selepas satu tempoh masa. . Dengan cara ini Ia boleh memastikan bahawa masa pelaksanaan setiap skrip PHP tidak akan dihadkan oleh time_out Oleh kerana setiap kitaran fail php dilaksanakan secara bebas, kaedah ini mengelakkan pengehadan. time_out . Tetapi sebaiknya tambahkan kod kawalan .cofig.php seperti di atas, supaya proses itu boleh ditamatkan.<?php $time=15; $url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; /* function */ sleep($time); file_get_contents($url); ?>
4 Tugas berjadual pelayan
Platform Unix
Jika anda menggunakan sistem Unix, anda perlu menambah baris kod khas pada permulaan skrip PHP anda untuk membolehkan ia dilaksanakan, supaya sistem mengetahui jenis atur cara yang akan digunakan untuk menjalankan skrip. Baris pertama kod yang ditambahkan untuk sistem Unix tidak akan menjejaskan perjalanan skrip di bawah Windows, jadi anda juga boleh menggunakan kaedah ini untuk menulis skrip merentas platform.
1. Gunakan PHP untuk melaksanakan skrip dalam Crontab
Sama seperti memanggil skrip shell biasa dalam Crontab (penggunaan Crontab khusus), gunakan program PHP untuk memanggil skrip PHP dan melaksanakannya setiap kali jam myscript.php adalah seperti berikut:
/usr/local/bin/php ialah laluan program PHP. 2. Gunakan URL untuk melaksanakan skrip dalam Crontab# crontab -e 00 * * * * /usr/local/bin/php /home/john/myscript.php
Jika skrip PHP anda boleh dicetuskan oleh URL, anda boleh menggunakan lynx atau curl atau wget untuk mengkonfigurasi Crontab anda.
Contoh berikut menggunakan pelayar teks Lynx untuk mengakses URL untuk melaksanakan skrip PHP setiap jam. Pelayar teks Lynx menggunakan mod perbualan untuk membuka URL secara lalai. Walau bagaimanapun, seperti yang ditunjukkan di bawah, kami menggunakan pilihan -dump pada baris arahan lynx untuk menukar output URL kepada output standard.
Contoh berikut menggunakan CURL untuk mengakses URL untuk melaksanakan skrip PHP setiap 5 minit. Curl memaparkan output pada output standard secara lalai. Menggunakan pilihan "curl -o", anda juga boleh membuang output skrip ke fail sementara temp.txt.00 * * * * lynx -dump http://www.sf.net/myscript.php
*/5 * * * * /usr/bin/curl -o temp.txt http://www.sf.net/myscript.php
*/10 * * * * /usr/bin/wget -q -O temp.txt http://www.sf.net/myscript.php
Format fungsi:
Tidak semua parameter boleh dikonfigurasikan, anda boleh melihat senarai dalam manual. Tetapan biasa:string ini_set(string $varname, string $newvalue)
@ ini_set('memory_limit', '64M');
@ini_set('display_errors', 1);
Jika parameter ialah 0, Jika sesi tidak dibuka secara manual, ralat akan dilaporkan.
@ini_set('session.auto_start', 0);
session.cache_expire: Menentukan tarikh tamat tempoh (minit) halaman sesi dalam cache klien. Lalai ialah 180 minit. Jika session.cache_limiter=nocache ditetapkan, tetapan di sini adalah tidak sah.
session.use_cookies: sama ada hendak menggunakan kuki untuk menyimpan ID sesi pada klien@ini_set('session.cache_expire', 180);
@ini_set('session.use_cookies', 1);
Ia dilumpuhkan secara lalai kerana ia akan membawa risiko keselamatan kepada pengguna anda:
Pengguna boleh memberitahu orang lain URL yang mengandungi sid yang sah melalui e-mel/irc/QQ/MSN, dsb.
URL yang mengandungi sid yang sah boleh disimpan pada komputer awam.
Pengguna boleh menyimpan URL dengan SID tetap dalam sejarah kegemaran atau penyemakan imbas mereka. Pengurusan sesi berasaskan URL sentiasa membawa lebih banyak risiko daripada pengurusan sesi berasaskan kuki dan harus dilumpuhkan.
Tugas berjadual PHP adalah perkara yang sangat menarik di atas adalah beberapa penyelesaian yang disediakan dalam artikel ini. Anda juga boleh membangunkan penyelesaian anda sendiri melalui idea artikel ini. Semoga dapat membantu semua yang memerlukan.
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk melaksanakan had masa dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Jika anda seorang pembangun PHP yang berpengalaman, anda mungkin merasakan bahawa anda telah berada di sana dan telah melakukannya. Anda telah membangunkan sejumlah besar aplikasi, menyahpenyahpepijat berjuta-juta baris kod dan mengubah suai sekumpulan skrip untuk mencapai op

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

Rentetan adalah urutan aksara, termasuk huruf, nombor, dan simbol. Tutorial ini akan mempelajari cara mengira bilangan vokal dalam rentetan yang diberikan dalam PHP menggunakan kaedah yang berbeza. Vokal dalam bahasa Inggeris adalah a, e, i, o, u, dan mereka boleh menjadi huruf besar atau huruf kecil. Apa itu vokal? Vokal adalah watak abjad yang mewakili sebutan tertentu. Terdapat lima vokal dalam bahasa Inggeris, termasuk huruf besar dan huruf kecil: a, e, i, o, u Contoh 1 Input: String = "TutorialSpoint" Output: 6 menjelaskan Vokal dalam rentetan "TutorialSpoint" adalah u, o, i, a, o, i. Terdapat 6 yuan sebanyak 6

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Apakah kaedah sihir PHP? Kaedah sihir PHP termasuk: 1. \ _ \ _ Membina, digunakan untuk memulakan objek; 2. \ _ \ _ Destruct, digunakan untuk membersihkan sumber; 3. \ _ \ _ Call, mengendalikan panggilan kaedah yang tidak wujud; 4. \ _ \ _ Mendapatkan, melaksanakan akses atribut dinamik; 5. \ _ \ _ Set, melaksanakan tetapan atribut dinamik. Kaedah ini secara automatik dipanggil dalam situasi tertentu, meningkatkan fleksibiliti dan kecekapan kod.
