【FuelPHP】task(タスク)を実装
タスクとは
・コマンドラインから実行されるかまたは cron ジョブとしてセットアップされるクラス
・ fuel/app/tasks ディレクトリに配置
・定期的に処理を実行したい時に使用
http://fuelphp.jp/docs/1.8/general/tasks.html:公式リファレンス
robotsを起動
fuelプロジェクトのディレクトリ直下に移動したらoilコマンドを実行します。
$php oil refine robots
"KILL ALL HUMANS!"
_____ /
/_____\
____[\*---*/]____
/\ #\ \_____/ /# /\
/ \# \_.---._/ #/ \
/ /|\ | | /|\ \
/___/ | | | | | | \___\
| | | | |---| | | | |
|__| \_| |_#_| |_/ |__|
//\\ <\ _//^\\_ /> //\\
\||/ |\//// \\\\/| \||/
| | | |
|---| |---|
|---| |---|
| | | |
|___| |___|
/ \ / \
|_____| |_____|
|HHHHH| |HHHHH|
アスキーアートのロボットが表示されます。
実際にタスクを実装
まず、 fuel/app/tasks 配下に任意のファイルを作成します。
今回はtest.phpを作成します。
タスククラスの書き方は fuel/app/tasks ディレクトリに、namespace “Fuel\Tasks” を指定したクラスを定義します。
処理は、タスククラスのインスタンスメソッドに実装します。
<?php namespace Fuel\Tasks; class Test { public function run() { echo "hello!"; } public function set_user($name) { echo "hello!".$name; } }
この例では、run メソッドと set_user というメソッドを実装します。
以下のコマンドでタスク名だけを用いると、メソッド "run()" を参照します。
$php oil refine test hello!
次にset_user メソッドを実行します。
set_user メソッドはパラメータを渡すことができます。
$php oil refine test:set_user "world!" hello!world!
上記のようにコマンドを叩くと指定したパラメータが渡されます。
まとめ
- php oil refine クラス:ファンクション でタスクを実行可能
- タスクには引数を与える事が可能
- タスクファイルは fuel/app/tasks で管理される