❶ php如何定時發送簡訊
1、首先設置好伺服器;
2、設置執行時間為無限制;
3、設置發送簡訊間隔為5分鍾;
4、打開存儲簡訊的文件,進行簡訊操作,關閉文件;
5、循環上面的過程;
6、具體設置代碼如下:
ignore_user_abort();//即使Client斷開(如關掉瀏覽器),PHP腳本也可以繼續執行.
set_time_limit(0);//執行時間為無限制,php默認的執行時間是30秒,通過set_time_limit(0)可以讓程序無限制的執行下去
$interval=60*5;//每隔5分鍾運行
do{
$fp=fopen('test.txt','a');
fwrite($fp,'test');
fclose($fp);
sleep($interval);//等待5分鍾
}while(true);
?>
❷ 幾種常見的PHP超時處理方法
【Web伺服器超時處理】
[ Apache ]
一般在性能很高的情況下,預設所有超時配置都是30秒,但是在上傳文件,或者網路速度很慢的情況下,那麼可能觸發超時操作。
目前apachefastcgiphp-fpm模式下有三個超時設置:
fastcgi超時設置:
修改httpd.conf的fastcgi連接配置,類似如下:
代碼如下:
<IfMolemod_fastcgi.c>
FastCgiExternalServer/home/forum/apache/apache_php/cgi-bin/php-cgi-socket/home/forum/php5/etc/php-fpm.sock
ScriptAlias/fcgi-bin/"/home/forum/apache/apache_php/cgi-bin/"
AddHandlerphp-fastcgi.php
Actionphp-fastcgi/fcgi-bin/php-cgi
AddTypeapplication/x-httpd-php.php
</IfMole>
❸ php腳本執行時間設置多少為好
建議不超過30秒 如果程序超時 應該仔細的檢查是什麼原因造成的超時,看能不能避免遇到。。如果時間設置太長,會造成其他頁面的PHP 停止響應
❹ 如何取消thinkphp操作mysql的30秒時間限制
解決方案1:
修改php.ini裡面的max_execution_time
解決方案2:
超時 set_time_limit(0)
解決方案3:
1.30s並不是TP的設置
2.30s也不是資料庫時間執行的上限
3.默認的一個PHP請求到結束的周期為30S,還有內存限制為128M php.ini可改參數~~
❺ php中怎麼讓程序一直運行下去,而不是超過30秒就停止
set_time_limit(0); //設置不超時,程序一直運行。
ignore_user_abort(true); //即使Client斷開(如關掉瀏覽器),PHP腳本也可以繼續執行.
❻ PHP函數執行時間過長無響應,有什麼優化的辦法
這個優化要看下你資料庫的結構了,最簡單的使用 set_time_limit(0);函數修改php文件執行30秒的限制,禁對單個文件可用,這樣不需要修改php的配置!
❼ php 為什麼我寫的ajax響應得那麼慢,用了30秒
不是每次都出來吧!quartus經常出現一些莫名的問題,然後死機。 如果只是這個工程的問題,刪除db文件夾試下! 如果您認可我的答案,請採納。 您的採納,是我答題的動力,O(∩_∩)O謝謝!!
❽ php 中如何 先返回頁面 然後間隔30秒在 調用函數! 使用sleep 用戶會等待,怎樣才能 不等待
sleep() 函數延遲代碼執行若干秒
你關閉瀏覽器後,伺服器端當然仍會執行,只是你看不到而已
❾ 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頁面時就是這樣做