有什么办法可以从MySQL执行PHP脚本吗?

时间:2012-12-26 11:54:37

标签: php mysql

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

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

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

3 个答案:

答案 0 :(得分:19)

有可能,请参阅MySQL常见问题解答以了解如何

Can triggers call an external application through a UDF?

但是,如果你不得不求助于此

,那么你的设计可能会很糟糕

答案 1 :(得分:12)

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 ;

source

答案 2 :(得分:3)

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

相关问题