1. php 設置代碼的最長執行時間
php完成某些操作的時候,可能需要較長的執行時間。這就需要設置他的執行時間,否則伺服器會在執行時間超時後,停止執行,頁面出現空白的情況。下面推薦兩種解決方案:
php文件頁面設置:
<?php
//修改最大執行時間
ini_set('max_execution_time','0');
//修改此次最大運行內存
ini_set('memory_limit','128M');
/***
*
*代碼塊省略......
*
*
*/
?>
php.ini配置文件設置(具體值,根據需要設置):
max_execution_time = 60
memory_limit = 128M
注意:如果執行內存完全滿足的話,就不需要設置了。具體設置,根據情況靈活設置。
2. 請問php如何定時在每天0:00:00執行特定代碼,不通過計劃任務,比如放時間為0:00:00後自
linux下可以 crontab執行如(crontab -e編輯,crontab -l查看)
0 1 * * * php test.php #每天01:00執行一次test.php
*/5 * * * * php test.php #每5分鍾肢戚執行一次test.php
php自身實現悶飢絕:可sleep實現
<?php
function func()
{
//實現要做的事
}
while(true)
{
sleep($n);//$n為秒數
func();
}
?>螞姿
3. php如何控制某段代碼的運行時間,即如果某段代碼在規定的時間內不能運行完,則終止或者跳過
我想可能不太好實現吧,php是線性執行。
應該用執行次數來控制吧。
或者你真正想要的效果是客戶端吧,用javascript或jquery可以實現。
4. php 如何判斷執行時間
要計算代碼的執行時間,在PHP來講是十分簡單的,首先,你需要知道,PHP是一種順序執行的腳本語言,所以,可以按照以下步驟來計算代碼的執行時間:
<?php
functiongetmicrotime()
{
list($usec,$sec)=explode("",microtime());
return((float)$usec+(float)$sec);
}
//記錄開始時間
$time_start=getmicrotime();
//這里放要執行的PHP代碼,如:
//echocreate_password(6);
//記錄結束時間
$time_end=getmicrotime();
$time=$time_end-$time_start;
//輸出運行總時間
echo"執行時間$timeseconds";
5. php 頁面程序執行速度正常應該在多少毫秒
你這個0.02毫秒,已經非常快了,只是以後數據多了以後,或者同時訪問的人多了以後,能否保持這個效率,這才是關健。
對於人來說,點一個網頁,幾秒打開都是可以接受的。
6. php 每5秒執行 一次php代碼怎麼寫
<?php
ignore_user_abort();//關掉瀏覽器,PHP腳本也可以繼續執行.
set_time_limit(3000);//通過set_time_limit(0)可以讓程序無限制的執行下去
$interval=5;//每隔5s運行
//方法1--死循環
do{
echo'測試'.time().'<br/>';
sleep($interval);//等待5s
}while(true);
//方法2---sleep定時執行
require_once'./curlClass.php';//引入文件
$curl=newhttpCurl();//實例化
$stime=$curl->getmicrotime();
for($i=0;$i<=10;$i++){
櫻隱豎
echo'測試'.time().'<br/>';
sleep($interval);//等待5s
}
ob_flush();
flush();
$etime=$curl->getmicrotime();
echo'<hr>脊大'攜數;
echoround(($etime-stime),4);//程序執行時間
7. 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;
}
8. 你用什麼方法檢查PHP腳本的執行效率(通常是腳本執行時間)和資料庫SQL的效率(通常是資料庫Query時間),
一般是在你要檢查的代碼開頭記錄一個時間,結尾記錄一個時森春間。取差值
但這個時間一般來說都很快,在一秒以內,所以不能直接用mktime(),我給你個我寫的函數
function getmicrotime(){
list($usec,$sec) = explode(" ",microtime());
$num = ((float)$usec+(float)$sec);
return sprintf("%.4f",$num);
}
用法:
$t_start = getmicrotime();
//這里放你要檢查的代碼
$t_end = getmicrotime();
echo $t_end - $t_start;
輸出的單位是知耐秒,"%.4f"代表精確到小數點後四位,這個可以自行搭春春更改
9. 怎樣延遲php執行時間
在命令行中運行,只要你不關閉命令行窗口,php程序就會一直運行下去。方法是:將php復制到php安裝目錄,然後將命令行路徑切換到php安裝路徑,運行
10. php控制循環執行速度
以下代碼可以得到程序執行的森胡時間,其中放入你的循環,比如循環1000次,將得到的總時瞎彎間除以1000就得磨春悶到每次循環的時間了
$t1=microtime(true);
//...執行代碼...
$t2=microtime(true);
echo'總耗時'.round($t2-$t1,3).'秒';