Laravel 4 Artisan命令行実戦
1876 ワード
1.コマンドライン生成ファイル
次のコマンドは、
2.Artisanコマンドラインのアクティブ化
3.ビジネスロジックコードの追加
最初のステップで生成された
4.コマンドライン呼び出し
まず、登録に成功したかどうかを確認し、直接実行します.
コマンドの実行を開始
実行結果は次の図のようになります.
次のコマンドは、
app/commands
フォルダにTopicMakeExcerptCommand.php
ファイルを生成します.$ php artisan command:make TopicMakeExcerptCommand
Command created successfully.
2.Artisanコマンドラインのアクティブ化
app/start/artisan.php
ファイルに、以下を追加します.Artisan::add(new TopicMakeExcerptCommand);
3.ビジネスロジックコードの追加
最初のステップで生成された
TopicMakeExcerptCommand.php
ファイルは、次の領域を変更します.<?php
use Illuminate\Console\Command;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Input\InputArgument;
class TopicMakeExcerptCommand extends Command {
/**
* 1. , : `topic:excerpt`,
* `php artisan topic:excerpt`
*
* @var string
*/
protected $name = 'topic:excerpt';
/**
* 2. , `php artisan`
* .
*
* @var string
*/
protected $description = ' ';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* 3. , ,
* , .
*
* @return mixed
*/
public function fire()
{
$topics = Topic::all();
$transfer_count = 0;
foreach ($topics as $topic) {
if (empty($topic->excerpt))
{
$topic->excerpt = Topic::makeExcerpt($topic->body);
$topic->save();
$transfer_count++;
}
}
$this->info("Transfer old data count: " . $transfer_count);
$this->info("It's Done, have a good day.");
}}?>
4.コマンドライン呼び出し
まず、登録に成功したかどうかを確認し、直接実行します.
php artisan
コマンドの実行を開始
実行結果は次の図のようになります.
$ php artisan topic:excerpt