====== oil タスクの作成と実行 ======
FuelPHP では アプリケーションに関する様々なタスクを定義して実行することができる。
===== 実行可能なタスクの一覧を表示する =====
$ oil r
または
$ oil refine
Usage:
php oil [r|refine]
Description:
Tasks are classes that can be run through the the command line or set up as a cron job.
Available tasks:
php oil refine install
php oil refine migrate:__construct
php oil refine migrate:__call
php oil refine migrate:help
php oil refine session
php oil refine session:create
php oil refine session:remove
php oil refine session:clear
php oil refine session:help
php oil refine robots
php oil refine robots:protect
Documentation:
http://docs.fuelphp.com/packages/oil/refine.html
===== アプリのテストデータを生成する =====
- タスクを書くための php ファイルを用意する。\\ fuelapp/app/tasks/testdata.php
/**
* t_simulations にテストデータを生成します。
*
* Usage (from command line):
*
* php oil r testdata:tablenames
*
* @return string
*/
public static function tablenames()
{
// t_simulations をクリア
\DBUtil::truncate_table(\Model_Tablename::table());
//
$tablenames_array = array(
array(
'column1' => 'testname',
'column2' => 1234567890,
'column3' => \Date::forge()->format('mysql'),
'column4' => 'TextTextTextTextText',
'created_at' => '',
'updated_at' => '',
),
);
//
$count_max = 1000;
for ($count = 0; $count < $count_max; $count++)
{
foreach ($tablenames_array as $row_data)
{
$at_date = \Date::forge()->format('mysql');
/* @var $row \Model_Tablename */
$row = \Model_Tablename::forge();
$row->column1 = $row_data['column1'];
$row->column2 = $row_data['column2'];
$row->column3 = $row_data['column3'];
$row->column4 = $row_data['column4'];
// レコードを保存
$row->save();
}
}
}
//
}
- タスクを実行する。
$ oil r testdata