限制 PHP 函数或命令的执行时间[重复]

2024-04-12

您好,是否可以仅对命令或函数设置时间限制,例如:

function doSomething()
{
    //..code here..

    function1();

    //.. some code here..

}

我只想为 function1 设置时间限制。

存在 set_time_limit 但我认为这设置了整个脚本的时间限制。 有人有什么想法吗?


set_time_limit() 确实在全局运行,但可以在本地重置。

设置允许脚本运行的秒数。如果达到这个程度, 脚本返回致命错误。默认限制为 30 秒,或者,如果 存在,max_execution_time 值在 php.ini 中定义。

当被召唤时,set_time_limit() 将超时计数器从零重新启动。在 也就是说,如果超时时间默认是30秒,那么默认是25秒 在脚本执行中,进行诸如 set_time_limit(20) 之类的调用,脚本 在超时之前将运行总共 45 秒。

我没有测试过,但你也许可以在本地设置它,当你离开时重置

<?php
set_time_limit(0);  // global setting

function doStuff()
{
    set_time_limit(10);   // limit this function
    //  stuff
    set_time_limit(10);   // give ourselves another 10 seconds if we want
    //  stuff
    set_time_limit(0);    // the rest of the file can run forever
}

// ....
sleep(900);
// ....
doStuff();  // only has 10 secs to run
// ....
sleep(900);
// ....

set_time_limit() http://php.net/manual/en/function.set-time-limit.php ... 在确定脚本运行的最长时间时,不包括在脚本执行之外发生的任何活动所花费的时间,例如使用 system() 的系统调用、流操作、数据库查询等。在 Windows 上情况并非如此,因为测量的时间是真实的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

限制 PHP 函数或命令的执行时间[重复] 的相关文章

随机推荐