Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Zend Framework 2自动化php过程_Php_Mysql_Automation_Zend Framework2 - Fatal编程技术网

Zend Framework 2自动化php过程

Zend Framework 2自动化php过程,php,mysql,automation,zend-framework2,Php,Mysql,Automation,Zend Framework2,在Zend Framework 2中执行自动化php过程的最佳方法是什么 我想安排一个任务在数据库(mysql)中运行,但它不与任何HTTP调用交互,即只在服务器端执行 我想这个过程是在我的框架模块中定义的,可以吗 如果无法在我的模块中定义它,我如何在外部执行它?我不确定您是否需要在PHP中执行任何工作,但如果不需要,您可以使用MySQL的。这将允许您在数据库中运行计划作业。阅读有关创建此类事件的语法的更多信息。以下是一个例子: CREATE EVENT some_event ON SCHEDU

在Zend Framework 2中执行自动化php过程的最佳方法是什么

我想安排一个任务在数据库(mysql)中运行,但它不与任何HTTP调用交互,即只在服务器端执行

我想这个过程是在我的框架模块中定义的,可以吗


如果无法在我的模块中定义它,我如何在外部执行它?

我不确定您是否需要在PHP中执行任何工作,但如果不需要,您可以使用MySQL的。这将允许您在数据库中运行计划作业。阅读有关创建此类事件的语法的更多信息。以下是一个例子:

CREATE EVENT some_event
ON SCHEDULE AT 12:34:00 EVERY DAY
DO
UPDATE my_schema.my_table SET my_column = my_column + 1;
我没有测试它,所以希望它能工作

或者,您可以在服务器上创建cronjob。大多数共享主机提供商也允许您这样做。如果您不使用共享主机,则可以让cronjob运行如下内容:

mysql -u username -p password -e "UPDATE my_schema.my_table SET my_column = my_column + 1";
同样,没有经过测试,但它应该为您指明正确的方向

另一个选项是将cronjob与
cURL
一起使用,这样当cronjob运行时,就会请求URL

curlhttp://yourdomain.com/yourtask

然后在Zend框架中,您可以有一个
yourtask
路由,或者只在URL中使用模块、控制器和操作。然后从PHP和Zend框架发送数据库查询

您还可以在其他地方使用一个独立的PHP脚本,该脚本由cURL调用。或者更好的是,直接使用PHP。那么它就不必向全世界开放


如你所见,你有很多选择。选择一个适合你的案例。我们没有足够的细节来做出这个选择。

这个问题有点太重要了。你能给我举个具体的例子说明你想做什么吗?!