CakePHP>エラーハンドリング(Error Handling)
CakePHPのマニュアルに、この章の日本語ドキュメントが無かったので、検証しながら意訳。
ErrorHandlingの基本
処理を中断して、エラーページを利用者に表示する共通機能が備わっている。
「controller」「component」上で利用可能。
・エラーハンドリングのための基本的な形式
<?php $this->cakeError(<string errorType>, [array parameters]); ?>
定義済みのエラータイプ
cake/console/error.php
いくつかの便利なエラータイプはデフォルトで定義済み
・サンプル:404エラー
<?php $this->cakeError('error404'); // パラメーターが不要なエラータイプもある $this->cakeError('error404', array('url' => 'some/other.url')); ?>
カスタムErrorType
app/app_error.php
上記ファイル新設 → メソッドを定義する(=カスタムエラータイプを定義)
エラータイプが様々なファイルに分散してしまうのはよろしくない
→なので、1つのファイルに定義できるようにしたよ とのこと。
<?php class AppError extends ErrorHandler { function testErrorCase($params) { $this->controller->set('message', $params['message']); $this->__outputMessage('test_error_case'); } } ?>