1. 程式人生 > >30秒運行超時的錯誤(Maximum execution time of 30 seconds exceeded)

30秒運行超時的錯誤(Maximum execution time of 30 seconds exceeded)

min cnblogs content onos 4.6 永不 lai php.ini shel

解決方案:

方法一:修改php.ini文件 max_execution_time = 30; Maximum execution time of each script, in seconds 把它設置成需要的值就可以了。如果設置成0的話,就是永不過期。

方法二:修改php執行文件 加上
<?
set_time_limit(0);
?>
max_execution_time = 30; Maximum execution time of each script, in seconds 把它設置成需要的值就可以了。如果設置成0的話,就是永不過期。 補充: 內存超限,具體報錯語句忘了,簡單說一下解決辦法。
解決方法利用循環分批導入; 每個循環內部開始處使用sleep(5);語句,做延遲執行,防止服務器內存同一時間占用過多,裏面數字據情況修改; 每個循環內部結束地方使用 ob_flush(); 刷新輸出緩沖flush();將當前為止程序的所有輸出發送到用戶的瀏覽器 兩者必須同時使用來刷新輸出緩沖 **ob_flush()和flush()的區別。 前者是把數據從PHP的緩沖中釋放出來, 後者是把不在緩沖中的或者說是被釋放出來的數據發送到瀏覽器。 所以當緩沖存在的時候,我們必須ob_flush()和flush()同時使用
//附上一段非常有趣的代碼,作者為PuTTYshell。在一個腳本周期裏,每次輸出,都會把前一次的輸出覆蓋掉。
header(‘Content-type: multipart/x-mixed-replace;boundary=endofsection‘); print "\n--endofsection\n"; $pmt = array("-", "\\", "|", "/" ); for( $i = 0; $i <10; $i ++ ){ sleep(1); print "Content-type: text/plain\n\n"; print "Part $i\t".$pmt[$i % 4]; print "--endofsection\n";
ob_flush(); flush(); } print "Content-type: text/plain\n\n"; print "The end\n"; print "--endofsection--\n";

30秒運行超時的錯誤(Maximum execution time of 30 seconds exceeded)