PHP 提供函数用于管理 MySQL 事件,可创建和管理计划任务。步骤包括:确定事件名称。选择调度类型(AT、EVERY 或 INTERVAL)。指定事件执行时间或间隔。在 DO 块中定义要执行的任务(更新表、调用存储过程)。

如何使用 PHP 创建 MySQL 事件
PHP 提供了管理 MySQL 事件的函数,使用这些函数可以轻松创建和管理计划好的事件。MySQL 事件允许您在预定的时间自动执行任务。
创建事件
$mysqli->query("CREATE EVENT event_name
ON SCHEDULE AT '2023-03-08 10:00:00'
DO
BEGIN
-- 执行的任务
END;");参数详解:
立即学习“PHP免费学习笔记(深入)”;
- event_name:事件名称。
- ON SCHEDULE:指定事件的调度类型。
- AT:指定事件的执行时间。
- DO:指定事件执行时要执行的任务。
调度类型
MySQL 支持以下调度类型:
采用 php+mysql 数据库方式运行的强大网上商店系统,执行效率高速度快,支持多语言,模板和代码分离,轻松创建属于自己的个性化用户界面 v3.5更新: 1).进一步静态化了活动商品. 2).提供了一些重要UFT-8转换文件 3).修复了除了网银在线支付其它支付显示错误的问题. 4).修改了LOGO广告管理,增加LOGO链接后主页LOGO路径错误的问题 5).修改了公告无法发布的问题,可能是打压
- AT:一次性执行。
- EVERY:按时间间隔重复执行。
- INTERVAL:按时间间隔重复执行,从现在开始计算。
执行任务
在 DO 块中,您可以指定要执行的任务,例如:
-- 更新表 UPDATE table_name SET column_name = 'new_value' WHERE id = 1; -- 调用存储过程 CALL stored_procedure_name(param1, param2);
示例:
创建一个名为 my_event 的事件,每天凌晨 1 点更新 users 表中的 active 列:
$mysqli->query("CREATE EVENT my_event
ON SCHEDULE EVERY 1 DAY STARTS '2023-03-08 01:00:00'
DO
BEGIN
UPDATE users SET active = 1 WHERE last_login > NOW() - INTERVAL 30 DAY;
END;");管理事件
一旦创建了事件,可以使用以下函数对其进行管理:
- mysqli_query():用于创建和修改事件。
- mysqli_fetch_all():用于获取有关事件的信息。
- mysqli_fetch_row():用于获取单个事件的信息。
- mysqli_query():用于删除事件。










