php - 使用 cron 设置提醒系统

标签 php mysql pdo cron daemon

我有用户访谈的具体日期。这是我的表格:

interviews
-------------
user_id
interview_date
interview_time
reminder_time

提醒时间可以是1小时、5小时、1天、3天、7天、14天。

我将如何设置一个 cron 作业或其他东西来检查数据库并在面试即将到来时发出提醒?

例如,如果面试还有 5 个小时,数据库就会向该用户发送电子邮件提醒。

我应该使用 cron 吗?守护进程?对守护进程不熟悉,只是在搜索时看到的。或者我应该使用其他东西?这是一个没有框架的纯/ native PHP 应用程序。

这是我到目前为止所拥有的:

$check = $db->prepare("SELECT * FROM interviews");

if(interview is coming up) {
    sendEmail();
}

但我很困惑应该在哪里以及如何搜索这些采访并发送提醒。

如果我搜索所有采访,这会给服务器带来巨大的负载。

感谢您的所有帮助和建议!

最佳答案

除非您希望 PHP 进程永久运行,否则您将需要某种常规调度程序,例如 cron。这可以将您的代码设置为每分钟、每小时或任何有意义的时间间隔运行一次。

通常每五到十五分钟就足以检查即将发生的事件并为其发送通知。

请务必在数据库中设置一个标志,以便确定是否已收到通知,以便在脚本崩溃且需要重新运行时可以从中断处继续运行。

关于php - 使用 cron 设置提醒系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54258152/

相关文章:

php - 在查询中使用 PDO 准备语句和 LIMIT 时出错

php - 在 PHP 服务器上签署 .mobileconfig

php - 如何使用 htaccess 从特定 url 中删除正斜杠

mysql - 错误 1193 (HY000) : Unknown system variable while Creating a trigger

python - 我如何在pyqt中创建一个搜索栏

php - 如何限制 HTML 中的列数

PHP 根据其他表的 ID 查询 MySQL 表

php - 通过 php 连接 ftp 时出错

php - SQLSTATE[HY093] : Invalid parameter number: parameter was not defined

PHP PDO 更新查询未在选择查询中更新