PHP头条
热点:

使用YII框架进行PHP程序的计划任务教程


1.当你通过yiic创建一个webapp应用后,
会在webapp/protected/下生成yiic.php, 由于是命令行应用,所以这里的yiic.php其实就是与webapp下的index.php一样的,命令行入口文件。

2.打开yiic文件,添加一行设置,将commands目录的路径添加到yiic中,这样,yiic就能够找到commands目录下的命令文件了,修改后的代码如下,红色为新加入代码:

1 2 3 4 5 6

3.配置好product/config/console.php里面需要用到的组件,像数据库连接。

配置main/console.php,设置import路径,以及db连接,这部份与main.php类似。

1 2 3 4 5 6 7 8 9 10 11 12 13 'db'=>array(            'connectionString'=>'mysql:host=localhost;dbname=testdrive',            'emulatePrepare'=> true,            'username'=>'root',            'password'=>'',            'charset'=>'utf8',            ),

同时配置好你所要自动加载的类库和扩展:

1 2 3 4 5 6 7 8 9 'import'=>array(                    'application.components.CommonClass',                    'application.models.*',                    'application.components.*',                ),

4.继承CConsoleCommand写入自己的命令类,Yii提供了两种方式去执行,如果你执行单一的任务,直接在run方法里面写,另外一种 就是同写你的Controller(控制器),增加actionXXX即可。
本实例采用第二种方式,即采用web程序开发的方式,在基础了CConsoleCommand的类中添加actionXXX方法来执行程序。
我们在commands目录下创建一个文件,来执行我们要执行的任务,暂且命名为TestCommand.php 。


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 classTestCommandextendsCConsoleCommand {              public$Action='index';//默认动作                /**                 * 在这里写入你的代码逻辑。                 */                publicfunctionactionIndex() {                    //在这里写入你的代码逻辑                }                                   }

5.ok,基本完成了,

再打开cmd命令符窗口,命令行下,如切换至protected目录下,执行

yiic Test index


便开始执行 PHP脚本了!


基于核心不应修改的原则,以上教程只是一个例子,在实际开发过程中,应新建一个类,继承Yiic进行第二步操作,以免给将来核心升级带麻烦,及造成安全隐患

www.phpzy.comtrue/phpkj/11956.htmlTechArticle使用YII框架进行PHP程序的计划任务教程 1.当你通过yiic创建一个webapp应用后, 会在webapp/protected/下生成yiic.php, 由于是命令行应用,所以这里的yiic.php其实就是与webapp下的index.php一样的,...

相关文章

相关频道:

PHP之友评论

今天推荐