我想知道为什么php(我使用5.5)没有停止这个脚本致命的错误。谢谢。
<?
set_time_limit(5);
ini_set('max_execution_time', 5);
echo 'hi';
for ($i = 0; $i < 10; $i++){
sleep(1);
}
echo '<br>bye';
?>
脚本的输出是:
hi<br>bye
没有任何错误或警告
从PHP文档:
set_time_limit()
函数和配置指令max_execution_time
只影响脚本本身的执行时间。在脚本执行之外发生的任何活动上花费的时间,例如使用system()
的系统调用,流操作,数据库查询等,在确定脚本运行的最大时间时不包括在内。这在Windows上是不成立的,因为所测量的时间是真实的。
解释一下这个文档的答案,它基本上意味着sleep()
在Linux中不是一个耗时的函数。
Sleep();
在linux上不按最大执行时间计算,请参阅此处的用户贡献和相同问题的答案