首頁 >後端開發 >php教程 >crontab中如何调用yii框架类中的一个方法

crontab中如何调用yii框架类中的一个方法

WBOY
WBOY原創
2016-06-06 20:21:551529瀏覽

【问题描述】:
需要在crontab中加入计划任务每天执行/data/www/producted/.../timeController.php文件中的Show方法。
在计划任务中加入:
0 1 * /data/www/producted/.../timeController.php Show > /dev/null 2>&1
计划在每天执行该方法。
但是该方法并没有按照预期被调用,分析原因可能是因为timeController.php是一个类文件,如果要调用其中的方法,需要符合yii的调用规则,所以上述写法无效。
请问如何在crontab中调用yii框架中的方法。谢谢

回复内容:

【问题描述】:
需要在crontab中加入计划任务每天执行/data/www/producted/.../timeController.php文件中的Show方法。
在计划任务中加入:
0 1 * /data/www/producted/.../timeController.php Show > /dev/null 2>&1
计划在每天执行该方法。
但是该方法并没有按照预期被调用,分析原因可能是因为timeController.php是一个类文件,如果要调用其中的方法,需要符合yii的调用规则,所以上述写法无效。
请问如何在crontab中调用yii框架中的方法。谢谢

只能调command
demo如下

<code>*/1 * * * * /usr/local/php/bin/php /path/to/www/protected/yiic foo bar >> /path/to/log.log 2>&1
# yiic 是命令文件 foo 是 命令类,对应 cammand/FooCommand.php 
# bar 是FooCommand 中的一个方法。  </code>

  1. 需要在多处被调用的代码,不应该写在某个controller里。

  2. 写一个command来调用它。

crontab调用php脚本。
php脚本通过curl的方式调用controller的acrion

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn