phalcon: tasks MainTask.php命令行工具
tasks MainTask.php 一般用来做计划任务,处理比较复杂的大型的数据。然后其他功能或程序才能更简单的读取这些复杂的数据。
例如,制作一个数据量非常大的count统计,那么久适合用tasks/MainTask.php
首先在/app/tasks/下建立MainTask.php
要处理的事物逻辑,按你自己的需求来,我这里处理一下一下各省的统计:
class MainTask extends Phalcon\Cli\Task{ /** * 默认方法,入口方法 */ public function mainAction(){ $this->console->handle(array( 'task' => 'main', 'action' => 'provincestats' ),array( 'task' => 'main', 'action' => 'userlogin' )); } public function provinceStatsAction() { //处理你的数据 } public function userloginAction(array $params) { //处理你的数据 $data = isset($params[0]) ? $params[0] : '2016-10-27' ; } }
那么代码写好好,我们怎么执行呢,这个事就交个linux系统,写一个计划任务。
我是windows环境,以widows为例。
php安装目录:f:\wamp\bin\php\php5.5.12\php.exe
phalcon目录 f:\wamp\www\phalcon\
cmd进入f:\wamp\bin\php\php5.5.12\目录里面,
执行provincestats 方法,此方法是没有参数的,执行代码如下:
php.exe f:\wamp\www\phalcon\app\cli.php main(其实就是MainTask.php文件) provincestat(看到了吧,是provinceStatsAction方法)
执行第二个userlogin方法,这个方法是有参数的哦。
php.exe f:\wamp\www\phalcon\app\cli.php main(其实就是MainTask.php文件) userlogin(看到了吧,是userloginStatsAction方法) 2016-10-22(这个是参数哦)