PHP 脚本是否使用“php”运行?命令受超时限制影响吗?

发布于 2024-11-07 13:38:57 字数 60 浏览 0 评论 0原文

使用“php”命令运行的 PHP 脚本是否受到超时限制的影响?我计划使用 cron 来安排 php 脚本。

Are PHP scripts run using the "php" command affected by the timeout limit? I plan to schedule php scripts using cron.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

木槿暧夏七纪年 2024-11-14 13:38:57

是的,但您可以通过将其添加到脚本顶部来设置无限超时:

set_time_limit(0);

Yes, but you can set an unlimited timeout by adding this to the top of your script:

set_time_limit(0);
永不分离 2024-11-14 13:38:57

某些系统(例如 Ubuntu)实际上已经在 /etc/php5 中以单独的 CLI 和 Apache 配置启动。

ini 文件中的相关命令是:

max_execution_time = 30      ; Maximum execution time of each script, in seconds

但是,如果您由于某种原因无法修改 php.ini,您可以使用有利于命令行的配置设置创建一个新的 php.ini,并像这样指向该文件:

php -c /path/to/ini/php.ini -f script.php

或者,您可以使用 Cailin 的解决方案,并在文件顶部设置时间限制 - 但如果您是在启用了 PHP“安全模式”的服务器上运行,那么您将必须使用自己的 ini 文件。

Some systems, such as Ubuntu, actually already start with separate CLI and Apache configurations in /etc/php5.

The relevant command in the ini file is:

max_execution_time = 30      ; Maximum execution time of each script, in seconds

However, if you are unable to modify the php.ini for whatever reason, you can create a new php.ini with configuration settings favourable to the command-line, and point to the file like so:

php -c /path/to/ini/php.ini -f script.php

Or, you can use Cailin's solution, and set the time limit at the top of the file - but if you are running on a server with PHP 'safe mode' enabled, then you will have to use your own ini file.

一瞬间的火花 2024-11-14 13:38:57

视情况而定。如果您的 php 二进制文件是 PHP CLI 界面,则默认的 max_execution_time 为零(意味着没有限制)。

另一方面,如果它是旧式 CGI 二进制文件,您将受到 max_execution_time 限制的影响,您需要调用 set_time_limit 来摆脱它(假设您没有处于可怕的 PHP 安全模式)。

Depends. If your php binary is the PHP CLI interface, the default max_execution_time is zero (meaning there is no limit).

On the other hand, if it's the older-style CGI binary, you will be affected by the max_execution_time limit, and you'll need to call set_time_limit to get rid of it (assuming you're not in the dreaded PHP safe mode).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文