php set_time_limit超时限制,它的作用是什么

发布时间:2024-04-29作者:小灵龙点击:60

在php中set_time_limit函数是用来限制页面或者url执行时间的。

比如一个页面设置set_time_limit(1),这个页面要在1秒内打开,否则报错。如果一个页面1秒还打不开就得检查代码运行了,是数据库慢还是加载js太多还是图片太多影响了页面打开速度?
比如宝塔计划任务访问url,每分钟执行一次该url。则需要在函数中设置set_time_limit(60)。也就是60秒内执行完这个函数,否则报错退出

set_time_limit(0)表示长时间链接运行,不限制运行时间

set_time_limit(60)和php.ini里的max_execution_time的关系是什么?

最大执行时间=php.ini里的max_execution_time数值-当前脚本已经执行的时间+set_time_limit()设定值

最大执行时间=php.ini里的max_execution_time数值 - 当前脚本已经执行的时间 + set_time_limit(60)设定值
假如php.ini里的max_execution_time=30,当前脚本已经执行10秒,则:
最大执行时间=30-10+60=80秒。

有时候设置set_time_limit没有效果,set_time_limit函数最好是在linux下执行,windows执行可能也无效



标签:php