【cakePHP3】例外発生時にテンプレートに変数を渡す!
CakePHP3の話なんですが、コントローラー内で例外処理を発生させると「error400.ctp」や「error500.ctp」といったテンプレートファイルが呼ばれてエラー画面が表示されますよね。
あのテンプレートに変数を渡す方法です。
以下のように[]の中に変数を記述すると、テンプレートファイルに変数を渡すことができます。
use Cake\Network\Exception\NotFoundException; class HogegeController extends AppController { public function _err_occur() { //コントローラーから例外発生 throw new NotFoundException(['testes' => 'テストだよ!']); } }
テンプレート内(/Template/Error/error400.ctp)では「$testes」の変数が参照可能です。
以上!