本文目錄一覽:
PHP實現定時任務的幾種方式
一. 簡單
?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);
二. 簡單 可控型
config.php
?php
return 1;
?
cron.php
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);
三. 簡單 改進型
?php
$time=15;
$url=”http://”.$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];
/*
function
*/
sleep($time);
file_get_contents($url);
?
怎樣定時執行某個PHP腳本文件,帶參數,沒有伺服器許可權,虛擬主機用戶 – 技術問答
php定時執行任務的幾個方法(網上搜集,未驗證)1.
Linux下crontab,
windows下計劃任務
2.
找個被頻繁調用的網頁,
裡面加上一個檢測代碼
3.
set_time_limit(0);
ignore_user_abort(true);4.
用一台機器開著頁面,使用AJAX完成這個定時任務(我自己添加的,覺得也算是一種方法)由於沒有管理許可權,方法1不靠譜;方法2的前提是必須有大量的用戶群體;方法3可以一試,但是伺服器一旦重啟就會失效。方法4,時間可能不是很精確,而且客戶端頁面一直開啟似乎也很難做到。
如何使用Linux的Crontab定時執行PHP腳本的方法
*/1 * * * * /usr/local/php/bin/php /home/wwwroot/clewx/web/linux.php Crontab Dingdian op 14186
這是我伺服器上的crontab粘貼給你了。
1、*/1是代表每分鐘。
2、/usr/local/php/bin/php 是php腳本。意思就是拿PHP去執行,跟拿迅雷下載東西一個道理,都是需要指定一個東西去執行。
3、/home/wwwroot/clewx/web/linux.php 是php程序
4、Crontab Dingdian op 14186 是4個參數,因為我的程序是MVC的,所以執行的是Crontab模塊的Dingdian控制器的op方法,14186是一個參數
5、上linux.php代碼,直接使用$argv可以接收參數
$_GET[‘m’] = $argv[1];
$_GET[‘c’] = $argv[2];
$_GET[‘a’] = $argv[3];
$_GET[‘id’] = $argv[4];
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/193939.html