CakePHP バッチ処理

バッチ処理の機能

CakePHP3の機能をフルに使える。
DBの取得、ログ出力、例外、固定値ファイル等

バッチ実装方法

※TestShell.php
<?php
namespace App\Shell;

use Cake\Console\Shell;
use Cake\Log\Log;
use Cake\Controller\Component;
use Cake\Controller\ComponentRegistry;
use App\Controller\Component\TESTComponent;

「Shell」を継承
class TESTShell extends Shell {

  public function initialize() {
    コンポーネントを参照(コンポーネントを利用する場合)
    $this->TEST = new TESTComponent(new ComponentRegistry());
  }

  シェルではmainメソッドが自動実行される
  public function main() {
    TESTComponent内のメソッドを実行
    $this->TEST->check();
  }
}

ファイル構成


└cake.php
└logs
 └cli-debug.log
 └cli-error.log
  ↑画面ログとは別にシェルログが出力される
└src
 └Controller
  └Component
   └TESTComponent.php
└Shell
 └TestShell.php
  ↑末尾に「Shell」を付ける

シェル実行方法

php cake.php TEST
↑TEST=TestShell.php

1週間でできる会員サイト「Limited」

1週間でできる会員サイト「Limited」
必要最小限。だから分かりやすい。始めやすい。続けやすい。
限定① 安⼼・安全の会員制
限定② 必要最⼩限の機能
限定③ 独⾃機能を追加可能