我运行的脚本持续时间超过了服务器允许的限制,服务器不会终止它们。
phpinfo()
显示max_execution_time
设置为30。使用ini_get('max_execution_time')
功能,会显示值30,但我将代码与sleep(45)
放在一起,它一直运行到最后。
我还尝试使用ini_set('max_execution_time', 15)
来减少时间,但代码在睡眠时仍然正常运行(45(。
我使用sleep
进行测试,但这是使用cURL的函数,甚至是用于为用户创建文件的foreach
和while
。
什么会改变服务器的最长执行时间?
"set_time_limit((函数和配置指令max_execution_time只影响脚本本身的执行时间。在确定脚本运行的最长时间时,不包括在脚本执行之外发生的任何活动上花费的时间,例如使用system((的系统调用、sleep((函数、数据库查询等">
复制自:sleep((。
换句话说:对于测试最长执行时间来说,Sleep()
是一个糟糕的选择。