我有一个问题,即如果没有响应,偶尔我运行的脚本(依赖于其他网站)会尝试从这些其他网站检索元素。我很欣赏我需要再次查看这部分代码。
但是,与此同时,我想了解为什么我在PHP代码顶部尝试过的这些命令无法正常工作?
ini_set('max_execution_time', 30);
set_time_limit(30);
脚本完全在PHP中运行,并作为CLI PHP(不是从浏览器启动的网页)执行:
php /var/www/html/client/index.php
脚本执行正常,但如果其中一个挂起,它会作为一个进程(通过TOP
或HTOP
查看)卡住,并在尝试执行时使用资源,并且永远不会关闭。 / p>
除了我已经尝试过的之外,还有其他方法可以强制脚本停止和关闭吗?
谢谢。
答案 0 :(得分:0)
您正在使用set_time_limit(30);
,这会增加脚本执行的时间。阅读其文档here。
如果您将该行放入循环中,则会在每次传递时为脚本执行时间限制添加时间。
CLI的默认时间限制设置为0,这是无限的。使用相同的方法,但只是在脚本的开头,并确保不在任何循环内或通过递归等多次执行。
这应解决问题。