首页 > php开发 > php页面函数设置超时限制

php页面函数设置超时限制

碰到页面程序执行超时时会提醒Fatal error: Maximum execution time of 300 seconds exceeded  是因为程序执行时间超过了最大允许执行时间,解决办法我总结了好几个大家选择适合自己的吧。

对于函数我们可以常用下面方法,直接给函数设置超时时间。

<?php
declare(ticks = 1);
    function a(){
    sleep(10);
    echo "a finishi ";
}
function b(){
    echo "Stop ";
}
function c(){
    usleep(100000);
}
 
function sig(){
    throw new Exception;
}
 
try{
    pcntl_alarm(1);
    pcntl_signal(SIGALRM, "sig");
    a();
    pcntl_alarm(0);
}catch(Exception $e){
    echo "timeout ";
}
 
b();
a();
b();
?>

来操作

对于文件或程序代码可使用set_time_limit只是设置你的PHP程序的超时时间

解决方法:

1. 修改php.ini文件:

max_execution_time = 30     ; // Maximum execution time of each script, in seconds

原值30秒,你可以改大点。

改完后记得重启php。该方法改了后对所有程序生效。

2. 修改你的程序,在你需要耗时超过默认值(30秒)的脚本中,加入代码:

set_time_limit(300);   // 最大执行时间这里设置300秒

设置成0表示不限时。

 


本文地址:http://www.phprm.com/develop/58099.html

转载随意,但请附上文章地址:-)

标签:catch

相关文章

发表留言