是否有任何方式我可以从MySQL执行PHP脚本


Is there any way I can execute a PHP script from MySQL?

我想从MySQL过程调用和执行PHP脚本。这可能吗?

CREATE PROCEDURE simpleproc (OUT param1 INT)
    BEGIN
         Call my php script here
    END//

[编辑]
事实上,我正在尝试在满足条件时引发事件-例如,当我的表字段值与当前时间匹配时。然后,我想捕获事件并发送电子邮件。

这是可能的,请参阅MySQL FAQ了解如何

触发器可以通过UDF调用外部应用程序吗?

但是如果你不得不使用

这可能是你的糟糕设计
DELIMITER @@
CREATE TRIGGER Test_Trigger
AFTER INSERT ON MyTable
FOR EACH ROW
BEGIN
DECLARE cmd CHAR(255);
DECLARE result int(10);
SET cmd=CONCAT('/usr/bin/php ', '/home/test/beta/demo.php');
SET result = sys_exec(cmd);
END;
@@
DELIMITER ;

为了解决您的问题,您可以为任务创建表。从存储过程中,您可以将任何用于task的字符串放入此表。在服务器上,您可以通过crontab运行PHP脚本。脚本将检查此表并进行一些操作