【发布时间】:2012-12-06 12:10:16
【问题描述】:
我的 PHP 脚本正在发送数百封电子邮件。我想将这些电子邮件发送时间之间的间隔设置为 5 分钟。我的意思是,每 2 封电子邮件之间的时间点击应该是 5 分钟。比如一个应该在上午 12:45 发送,第二个应该在上午 12:50 发送等等。
为此我从命令行尝试过:
at 08:10am Dec 19
echo "Welcome" | mail -s "Hello world" abc@abc.com
所以这很好,邮件在上午 08:10 发送。但是,我怎样才能从 PHP 做同样的事情呢? 如何在 PHP 中使用 linux 的 AT 命令?
或者还有其他简单的方法吗?
【问题讨论】:
-
有很多这样的问题和例子——你只需要做一些研究。基本上,您将要在数据库中发送的电子邮件排队。然后你有一个后台进程(守护进程)定期发送大量电子邮件,并在数据库中将它们标记为“已发送”。在这里使用
at是不合适的。例如:Creating an email queue in PHP? -
是的,但我不想在这里整合数据库头疼,我只想使用Linux命令。所以请给我建议。
-
如果你尝试使用
at,你肯定会更加头疼。这是一个 hack 和一个糟糕的设计决策,应用程序的成功可能会随之而来。但话又说回来,我不确定你是否关心 - 在这种情况下:php execute shell command。世界触手可及。拥抱它。