導航:首頁 > 編程語言 > php代碼執行時間

php代碼執行時間

發布時間:2024-12-05 04:21:35

php網站程序如何按照指定時間每日運行

php計劃任務(按指定時間來運行某個程序)
前一陣子遇到有一個程序要在某個時間點來運行,但想來想去也不知用那種方法來觸發這個程序,第一個想到的時用JS配合PHP來現實,但沒有實現成功,後來請教了一個高手說可以在操作系統里配置。在 Linux 中,我們經常用到 crond 伺服器來完成這項工作。cron 伺服器可以根據配置文件約定的時間來執行特定的作務。比如我們可以在配置文件中約定每天早上4點,對 httpd 伺服器重新啟動,這就是一個計劃任務;windows 的計劃任務我們大家都很熟悉。下面我要介紹的是網站計劃任務(訪問觸發)。

第一個首先要解決的時誰來觸發,我選擇的是用前台頁面來觸發,
代碼如下:
代碼:<img src="visit.php?job=cron&t=1212880316" alt="" style="width:0px;height:0px;" />
t=1212880316//這個是時間

第二個要解決的時什麼時侯運行,(具體的不講了,把代碼貼出)
代碼://計劃執行時間
if($job=='cron'){
check_method();
//查詢資料庫的下一個時間是否小於現在的時間
if($maxrecord['deltemptime']<$nowtime['timestamp']){
$crondb = array();
//day為0為每日 week周 minute時間斷 hour什麼時侯開始
$rt['cron'] = array('day'=>'0','week'=>$config['cron_week'],'m'=>$config['cron_minute'],'hour'=>$config['cron_hour']);
$crondb[] = $rt;
}
foreach ($crondb AS $key => $cron_val){
//設置了允許分鍾段
if (!empty($config['cron_minute'])){
$m = explode(' ', $config['cron_minute']);

$m_now = intval(local_date('i',$nowtime['timestamp']));
if (!in_array($m_now, $m)) {//不包含此分鍾的跳出
continue;
}
}

/*執行任務*/
/*********此處是你寫的任務***********************/
$next_time = get_next_time($cron_val['cron']);
$DB->query("UPDATE `maxrec` SET `deltemptime`={$next_time}");
}
exit;
}

㈡ php執行cmd腳本超時,不能去改ini因為超時期間頁面一直在等待,怎麼才能

PHP腳本執行超時的解決辦法

在php中默認腳本執行超時時間為30秒了,如果未進行設置30秒之後如果你的腳本還未執行完就會超時了,下面我來給大詳解解決PHP腳本執行超時的方法。
php.ini 中預設的最長執行時間是 30 秒,雖然可以通過調整 php.ini 中 max_execution_time的值來達到目的,但有些情況是沒有條件修改php.ini的,如何解決這個問題呢。
一種方法是在 PHP 腳本中加入
代碼如下
ini_set('max_execution_time', '0');
將運行時間設置成0(無限值);
另一種方法是在命令行下執行腳本,使用命令行執行腳本時,最大運行時間被設置為了無限值。
修改php.ini的腳本執行時間限制
編輯php.ini,修改max_execution_time值:
代碼如下
max_execution_time=500
//此修改需要重新載入php.ini,需要重啟web伺服器生效。
通過.htaccess 文件設置腳本執行時間
代碼如下
php_value max_execution_time 500
在腳本中設置執行的最大時間
代碼如下
ini_set('max_execution_time', 500);
用php的函數取消腳本的時間限制
代碼如下
set_time_limit(0);
set_time_limit用來設置腳本的超時時間,此函數規定從該句運行時起程序必須在指定秒數內運行結束,超時則程序出錯退出。
下面是一個例子. 有10000條數據, 要修改其中某些數據, 運用PHP分步執行處理, 代碼如下:
action.php
代碼如下
<?php
$stid = isset($_GET['stid'])?$_GET['stid']:0;
$endid = $stid + 100;
$maxid = 10000;
function dosomething(){
//要時間比較多的操作
……
}
$sql_string=」select * from `table` where id>』$stid』 and id<=』$endid』 order by id」;
$datas = getdata_bysql($sql_string);
foreach($datas as $data){
//處理數據
…..
echo $id.」 處理完成. <br />」;
if($id>=$maxid){exit;}
}
if($stid<=$maxid){
$stid = $stid + 100;
$url=」action.php?stid=$stid」;
echo $url;
echo 『<script language=」javascript」>location=」『.$url.』」; </script>』;
}
?>
其中的dosomething()是一個耗時操作. 這里我們通過限制id范圍來減少運行時間, 運行完後通過javascript的跳轉來自動運行下一步
現在dedecms生成html頁面時就是這樣做

㈢ PHP 設置代碼的最長執行時間

php完成某些操作的時候,可能需要較長的執行時間。這就需要設置他的執行時間,否則伺服器會在執行時間超時後,停止執行,頁面出現空白的情況。下面推薦兩種解決方案:

  1. php文件頁面設置:

    <?php
    //修改最大執行時間
    ini_set('max_execution_time','0');
    //修改此次最大運行內存
    ini_set('memory_limit','128M');

    /***
    *
    *代碼塊省略......
    *
    *
    */

    ?>
  2. php.ini配置文件設置(具體值,根據需要設置):

    max_execution_time = 60

    memory_limit = 128M

    注意:如果執行內存完全滿足的話,就不需要設置了。具體設置,根據情況靈活設置。

    ㈣ php定時執行任務怎麼寫

    藉助crontab來編寫;

    1. 編寫定時執行腳本(單獨的一個php文件,或者某個方法);

    2. 配置crontab,指定執行路徑地址;

    3. 啟動crontab服務即可。

    ㈤ PHP中三種設置腳本最大執行時間的方法

    探討PHP設置腳本最大執行時間的三種方法

    在PHP中,設置腳本最大執行時間是關鍵。默認情況下,腳本最長執行時間為30秒,這在php.ini文件中由max_execution_time變數決定。當腳本運行時間超出這個限制時,需要調整這個設置。

    實現調整的方法主要有三種:

    1、直接修改php.ini文件

    在php.ini中,找到max_execution_time設置並修改其值。這種方法適用於網站維護人員對代碼結構不熟悉,需要進行調整的情況。

    2、利用PHP的ini_set函數

    使用ini_set函數來設置腳本的最大執行時間。通過調用ini_set("max_execution_time", $seconds),將腳本執行時間限制為$seconds秒。然而,這種方法不推薦在生產環境使用,因為ini_set函數可能被禁用。

    3、應用set_time_limit函數

    使用set_time_limit函數可以為當前腳本設置執行時間限制。通過set_time_limit($seconds),可以將執行時間限制為$seconds秒。這種方法更加靈活且適用於寫代碼階段進行調整。

    綜上所述,根據實際情況選擇合適的方法進行腳本執行時間的調整。對於後期維護,修改php.ini文件更為實用;而在代碼編寫過程中,應用set_time_limit函數更為推薦,避免了可能存在的ini_set函數禁用問題。

    ㈥ 大俠們,請教:我想取一段時間來執行一個動作,比如每天上午10點到11點半這個時間段。用PHP代碼如何實現

    $Hour=Date('Hs'); //獲取當前的小時數和秒數,格式是1030, 10點30分

    if(1000<$Hour&&1130>$Hour){
    執行代碼

    }

閱讀全文

與php代碼執行時間相關的資料

熱點內容
程序員做產品迭代有前途嗎 瀏覽:226
蘋果電腦怎麼修改默認文件夾 瀏覽:461
一年級10元巧克力演算法 瀏覽:795
神經網路演算法種類 瀏覽:705
java數組排序自定義排序 瀏覽:96
會員推廣系統源碼 瀏覽:389
在編譯器中如何編譯 瀏覽:653
程序員想讀博 瀏覽:744
androidtcpdump下載 瀏覽:222
python如何實現界面化 瀏覽:636
託管伺服器如何定級 瀏覽:768
命令創建設備節點 瀏覽:894
勁舞團輔助源碼論壇 瀏覽:281
春運在哪個app買機票便宜 瀏覽:690
南京程序員借錢 瀏覽:28
android拍照獲取圖片路徑 瀏覽:556
pdf文件轉換excel 瀏覽:546
湖南伺服器安全雲空間 瀏覽:607
文件夾是只讀怎麼辦 瀏覽:895
linuxtelnet退出命令 瀏覽:248