Laavel Command 배치
//Command名と引数を定義、グロバール変数であり。
protected $signature = 'Command:sample {name}';
#/app/Console/SampleCommand.php//引数の設定や、出力の設定
public function handle()
{
$name = $this->argument("name");
$this->info("Hello $name");
}
테스트$ php artisan Command:sample haku
Hello haku
//任意引数の指定
protected $signature = 'sample:sample {name?}';
//デフォルトの引数
protected $signature = 'sample:sample {name=laravel}';
//引数の説明
protected $signature = 'sample:sample {name=laravel : 名前を指定} {age? : 年齢を指定}';
세션 시스템:public function handle()
{
$this->info('start');
$name = $this->ask('名前を入力してください');
$age = $this->ask('年齢を入力してください');
$this->info("名前 : $name");
$this->info("年齢 : $age");
if ($this->confirm('この内容で実行してよろしいですか?')) {
$this->info("$name $age years old");
} else {
$this->info('cancel');
}
$this->info('end');
}
//結果
$ php artisan Command:sample --dry-run
start
お名前::
> はく
年齢:
> 25
名前:はく
年齢:25
この内容で実行してよろしいですか (yes/no) [no]:
> yes
はく 25 year old
end
색상 구분, 간단한 형태 public function handle()
{
$this->info('info');
$this->line('line');
$this->comment('comment');
$this->question('question');
$this->error('error');
$this->table(
['名前', '年齢'],
[
['Taro', 10],
['Laravel', 5],
]
);
}
오류 메시지 지정:
public function handle()
{
$this->info('start');
if ($this->option('force-error')) {
$this->error('error!');
return config('command.exit_code.ERROR');
}
$this->info('end');
return config('command.exit_code.SUCCESS');
}
#config/command.phpreturn [
'exit_code' => [
'SUCCESS' => 0,
'ERROR' => 1
],
];
valitionm 사용 시class SampleValidateCommand extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'sample:validate {name : 名前を指定} {age? : 年齢を指定}';
... 中略
/**
* Execute the console command.
*
* @return mixed
*/
public function handle()
{
$this->info('start');
try {
$this->validate();
} catch (ValidationException $e) {
$this->error('validation error!');
foreach ($e->validator->getMessageBag()->all() as $error) {
$this->error($error);
}
return config('command.exit_code.ERROR');
}
$this->info('end');
return config('command.exit_code.SUCCESS');
}
/**
* Validation
*/
private function validate()
{
\Validator::validate(
array_filter($this->arguments()),
[
'name' => 'max:10',
'age' => 'numeric|min:20',
],
[
'name.max' => '名前は10文字以内で入力してください',
'age.numeric' => '年齢は数値を入力してください',
'age.min' => '年齢は20才以上で入力してください'
]
);
}
}
참조: http://qiita.com/nenokido2000/items/abbf70c87c9ad86a2b89
Reference
이 문제에 관하여(Laavel Command 배치), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yumin/items/9ac033ac117499db77f2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)