【发布时间】:2018-09-10 08:15:35
【问题描述】:
我需要在 x 次后使用 php 代码发送和发送电子邮件。
我不想使用 cronjob。所以,这段代码不起作用,因为它是一次打印的 php 代码,并且不会像 js 那样自动更改 DOM。但我需要这样的东西:
$today = date('Y-m-d H:i:s');
$dataorder = date("Y-m-d H:i:s", $order->created);
$delay_days = 240;
$senday = date('Y-m-d H:i:s', strtotime( "$dataorder + $delay_days min" ));
if ($today == $senday) {
echo "sent";
} else {
echo "not yet sent";
}
现在,我可以使用 js,但我不确定这是否可行,这个 php 脚本是后端的全 php 页面。那么,我可以只使用 php 吗?喜欢使用睡眠功能?或其他人
我不知道用是最好的方法。
(具体来说,它是一个发送电子邮件的系统,记得在网站上留下推荐。)
谢谢
【问题讨论】:
-
如果没有像 cronjob 这样的任务调度程序,要实现这样的目标将非常困难。
-
真的没有其他方法可以发送延迟邮件吗?使用睡眠可以工作吗?或 time_sleep_until。我尝试使用它,但目前没有成功。我真的不知道!
-
@MarcoRomano 你想让程序休眠 240 天吗?那会杀死你的服务器。您必须使用 cron 作业或其他一些安排它的方式。没有其他出路。将任务保存到数据库,然后让 cron 作业从中挑选任务。
-
Cron 将每 N 秒运行一个 php 脚本。创建脚本以检查要发送的电子邮件,然后安排它以给定的时间间隔运行。注意:cron 是 linux o/s 功能,而不是 PHP 功能...
-
@MarcoRomano 您可以安排 cron 每分钟或每年运行一次。尝试一些在线 cron 工具以更好地理解,例如 crontab.guru
标签: javascript php email