LoginSignup
1
2

More than 3 years have passed since last update.

laravel6 バッチを作って実行してみる

Last updated at Posted at 2021-02-15

目的

  • laravel6のアプリでバッチを作成し、実行する方法をまとめる。

実施環境

  • ハードウェア環境
項目 情報
OS macOS Catalina(10.15.5)
ハードウェア MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)
プロセッサ 2 GHz クアッドコアIntel Core i5
メモリ 32 GB 3733 MHz LPDDR4
グラフィックス Intel Iris Plus Graphics 1536 MB
  • ソフトウェア環境
項目 情報 備考
PHP バージョン 7.4.8 Homebrewを用いてこちらの方法で導入→Mac HomebrewでPHPをインストールする
Laravel バージョン 6.X commposerを用いてこちらの方法で導入→Mac Laravelの環境構築を行う
MySQLバージョン 8.0.19 for osx10.13 on x86_64 Homwbrewを用いてこちらの方法で導入→Mac HomebrewでMySQLをインストールする

条件

  • laravel6のアプリがありローカルサーバなどを起動しブラウザから確認する事ができること。

情報

  • バッチの実行方法は手動でコマンドを叩いて実行するものとする。
  • バッチの作成と手動実行の方法をまとめることが目的のためバッチの内部で実行する処理は最低限とし「Hello Japan!」をターミナルに表示するだけのものとする。

概要

  1. バッチの作成
  2. 実行と確認

詳細

  1. バッチの作成

    1. アプリ名ディレクトリで下記コマンドを実行してバッチクラスを作成する。

      $ php artisan make:command EchoStrCommand
      
    2. アプリ名ディレクトリで下記コマンドを実行して作成したバッチクラスが記載されているファイルを開く。

      $ vi app/Console/Commands/EchoStrCommand.php
      
    3. 開いたファイルを下記のように修正する。

      アプリ名ディレクトリ/app/Console/Commands/EchoStrCommand.php
      <?php
      
      namespace App\Console\Commands;
      
      use Illuminate\Console\Command;
      
      class EchoStrCommand extends Command
      {
          /**
           * The name and signature of the console command.
           *
           * @var string
           */
          // 下記を修正
          protected $signature = 'command:echo_str';
      
          /**
           * The console command description.
           *
           * @var string
           */
          // 下記を修正
          protected $description = 'Echo Hello Japan!';
      
          /**
           * Create a new command instance.
           *
           * @return void
           */
          public function __construct()
          {
              parent::__construct();
          }
      
          /**
           * Execute the console command.
           *
           * @return mixed
           */
          public function handle()
          {
              //下記を追記
              echo 'Hello Japan!'."\n";
          }
      }
      
  2. 実行と確認

    1. アプリ名ディレクトリで下記コマンドを実行し出力結果の中に「command:echo_str」が存在していることを確認する。

      $ php artisan list
      
    2. アプリ名ディレクトリで下記コマンドを実行する。

      $ php artisan command:echo_str
      
    3. 下記のようにターミナル上に「Hello Japan!」の文字が表示されることを確認する。

      EchoStrCommand_php_—_laravel6.png

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2