找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 303|回复: 0
打印 上一主题 下一主题

php页面函数设置超时限制的方法

[复制链接]

2500

主题

2513

帖子

7520

积分

论坛元老

Rank: 8Rank: 8

积分
7520
跳转到指定楼层
楼主
发表于 2018-2-14 05:51:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了php页面函数设置超时限制的方法。分享给大家供大家参考。具体方法如下:
碰到页面程序执行超时时会提醒Fatal error: Maximum execution time of 300 seconds exceeded 是因为程序执行时间超过了最大允许执行时间,解决办法我们总结了几个供大家选择.
对于函数我们可以常用下面方法,直接给函数设置超时时间来操作,代码如下:
[U]复制代码[/U] 代码如下: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文件,代码如下:
[U]复制代码[/U] 代码如下:max_execution_time = 30; // Maximum execution time of each script, in seconds 原值30秒,你可以改大点.
改完后记得重启php,该方法改了后对所有程序生效.
2.修改你的程序,在你需要耗时超过默认值(30秒)的脚本中,加入代码:
[U]复制代码[/U] 代码如下:set_time_limit(300); // 最大执行时间这里设置300秒
设置成0表示不限时。
希望本文所述对大家的PHP程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • 超过了脚本运行的最长时间..Server.ScriptTimeOut 属性指定新值
  • Asp中Server.ScriptTimeOut属性需要注意的一点分析
  • Asp.Net各种超时问题总结
  • .net让线程支持超时的方法实例和线程在执行结束后销毁的方法
  • ajax提交session超时跳转页面使用全局的方法来处理
  • 设置ASP.NET页面的运行超时时间详细到单个页面及站点
  • JS实现页面超时后自动跳转到登陆页面
  • php设置页面超时时间解决方法
  • 登录超时给出提示跳到登录页面(ajax、导入、导出)
  • ASP.NET页面请求超时时间设置多种方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端