1

有没有办法让 php 在没有 cron 的情况下永远工作。我想要的是在几个小时后通过运行 mysql 查询来解禁用户,谢谢

4

2 回答 2

2

您可以从命令行启动脚本并让它在后台运行。您必须以这样一种方式设计此脚本,使其永远不会退出,而只是使用该sleep()函数永远循环以避免不必要的处理器负载。由于从命令行调用的 php 脚本没有最大执行时间,因此脚本将一直运行,直到您使用该kill命令手动将其终止。

编写脚本后,您可以使用以下方法启动它:

nohup php myscript.php &

nohup使脚本在您退出启动它的控制台会话后仍然运行,否则它将终止。最后的&符号在后台将脚本作为新进程启动,以便您可以继续使用控制台。

于 2013-08-18T03:15:58.180 回答
2

如果您无法访问服务器上的 cron 作业(我猜您是在共享主机上运行?),最好的选择是运行“外部 cron”。看看www.setcronjob.com。我已经使用它几个月了,它非常稳定。

  1. 您可以对其进行设置,以便它随时调用您网站上的脚本。(例如:http ://www.yoursite.com/script.xxx )
  2. 在脚本中,您可以运行 MySQL 查询来检查哪些用户已被禁止几个小时,然后取消禁止他们。
于 2013-08-18T03:24:59.660 回答