近期写一个php查询工具需要的运行时间比较长,宝塔PHP默认超时又是100秒,超时后就会出现502,100秒完全不够用,我便尝试用下方俩种函数修改PHP超时限制,但是不知道为啥不生效没作用。
ini_set'max_execution_time'0// 最大脚本运行时间
set_time_limit0 //最大脚本运行时间
无奈,我直接用最简单粗暴有用的方法:上宝塔修改
如果有更简单的方法,欢迎留言反馈
php执行cmd脚本超时,不能去改ini因为超时期间页面一直在等待,怎么才能
PHP脚本执行超时的解决办法在php中默认脚本执行超时时间为30秒了,如果未进行设置30秒之后如果你的脚本还未执行完就会超时了,下面我来给大详解解决PHP脚本执行超时的方法。 中缺省的最长执行时间是 30 秒,虽然可以通过调整 中 max_execution_time的值来达到目的,但有些情况是没有条件修改的,如何解决这个问题呢。 一种方法是在 PHP 脚本中加入 代码如下ini_set(max_execution_time, 0);将运行时间设置成0(无限值);另一种方法是在命令行下执行脚本,使用命令行执行脚本时,最大运行时间被设置为了无限值。 修改的脚本执行时间限制编辑,修改max_execution_time值: 代码如下 max_execution_time=500//此修改需要重新加载,需要重启web服务器生效。 通过 文件设置脚本执行时间 代码如下 php_value max_execution_time 500在脚本中设置执行的最大时间 代码如下ini_set(max_execution_time, 500);用php的函数取消脚本的时间限制 代码如下set_time_limit(0);set_time_limit用来设置脚本的超时时间,此函数规定从该句运行时起程序必须在指定秒数内运行结束,超时则程序出错退出。 下面是一个例子. 有条数据, 要修改其中某些数据,运用PHP分步执行处理, 代码如下 代码如下<?php$stid = isset($_GET[stid])?$_GET[stid]:0;$endid = $stid + 100;$maxid = ;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){//处理数据… $id.” 处理完成. <br />”;if($id>=$maxid){exit;}}if($stid<=$maxid){$stid = $stid + 100;$url=”?stid=$stid”;echo $url;echo ‘<script language=”javascript”>location=”‘.$url.’”; </script>’;}?>其中的dosomething()是一个耗时操作.这里我们通过限制id范围来减少运行时间, 运行完后通过javascript的跳转来自动运行下一步现在dedecms生成html页面时就是这样做
宝塔面板怎么修改网站的PHP设置
修改 php设置,可以在宝塔面板的 php中找到配置修改,配置文件,和性能调整这三项。
其实都是修改php设置,区别在于配置修改和性能调整比较方便容易理解,容易操作。
wp php time limit怎么设置
第一 set_time_limit(0)长连接的实现每次访问PHP脚本的时候,都是当所有的PHP脚本执行完成后,我们才得到返回结果。 如果我们需要一个脚本持续的运行,那么我们就要通过php长连接的方式,来达到运行目的。 每个PHP脚本都限制了执行时间,所以我们需要通过 set_time_limit 来设置一个脚本的执行时间为无限长;然后使用 flush() 和 ob_flush() 来清除服务器缓冲区,随时输出脚本的返回值。 如下面这段脚本:<?php header(Content-type: text/plain); set_time_limit(0); $infoString = Hello World . \n; while( isset($infoString) ) { echo $infoString; ob_flush(); flush(); sleep(5); } ?>?当我们执行后,每隔5秒钟,我们会得到一行 Hello World ,如果不按停止按钮,浏览器会不停的一行一行继续加载。 ??第二 set_time_limit不起作用的解决方法set_time_limit(秒数);规定从该句运行时起程序必须在指定秒数内运行结束,超时则程序出错退出.但是有时候设置set_time_limit没有效果,set_time_limit函数最好是在linux下执行,在windows执行可能也无效解决方法:修改里的max_execution_time = 30了。 这个默认是30秒,修改为max_execution_time = 300.重新启动apaceh服务器。 这样超时设置为300秒就有提示信息了
更多优质资源请微信扫码访问:盘姬资源网小程序
免责声明
本文仅代表作者观点,不代表本站立场,内容的真实性请自行甄别谨防上当受骗。
本站采用 CC BY-NC-SA 4.0 国际许可协议 进行许可,转载或引用本站文章应遵循相同协议。
-
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
-
本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!
-
本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报。
-
如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。
站长邮箱:xm520vip@gmail.com
本文链接:https://123.775n.com/post-187.html- 上一篇: 分享一款适合做站群首页的单页
- 下一篇: PHP获取文件夹内最新多个文件名
发表评论