CakePHP2.0 Exceptionを作成する。

notoです。

本日が僕の今年最後の更新です。ブログやろうぜ!とちゃけみさんを誘い4ヶ月程経つことになります。 途中からiyamaさんが加入し、毎日更新するという目標も達成できました。(記事として怪しいのも結構ありますが。。。)

来年の目標は、文章力の向上! 皆様今後ともよろしくお願いいたします。 それでは、今年最後の締めは、CakePHP2.0 アプリケーションのExceptionの作成です。

CakePHP2.0からCoreに手を加えることなく、アプリケーション自身のExceptionを作成することができるようになりました。そこで、簡単なExceptionを作成してみます。

動作環境

  • CakePHP2.0.4
  • PHP 5.3.8
  • CentOS 5.6

Exeptionの作成

例としてAppExeptionクラスを作成してみます。

配置場所の作成

「app/Lib」配下にErrorディレクトリを作成します。

AppExeptionのクラスの作成

「app/Lib/Error」配下にCakeExceptionを継承したAppExeption.php AppException.phpを配置します。

コードです。

1
2
3
4
5
6
7
8
9
10
<?php
class AppException extends CakeException {

    public function __construct($message = null, $code = 0) {
        if (empty($message)) {
            $message = 'Application Error';
        }
        parent::__construct($message, $code);
    }
}

bootstrapの修正

クラスを作成しただけでは、まだAppExceptionクラスは利用できませんので、bootstrapにAppExceptionクラスのインスタンスを生成できるよう登録します。

1
App::uses('AppException', 'Error');

これでAppExceptionクラスが利用できるようになりました。簡単ですね。 CakePHP2.0少しずつ使い始めてますが、かゆいところに手が届く感じがいいですね。

まだ2.0の情報は少ないのでこれからも可能な限り情報を提供できるよう頑張っていきます。PHPを初めて6ヶ月程経ちますが、ようやく初心者からは脱出できたかな。。。

それでは良いお年を!

Comments