3

誰かが __get メソッドに次のコードを使用しているのを見て、エレガントに見えたのでコピーしました。

public function __get($param)
{
    if (!isset($this->params[$param])) {
        throw new Exception("Property doesn't exist");
    }
    return $this->params[$param];
}

しかし、プロパティが存在するかどうかに基づいて単純なアクションを実行するときに、例外を処理するには多すぎるようです。この場合、どうするのが良いでしょうか。NULL を返し、十分にチェックしていますか?

4

2 に答える 2

0

アプリケーションの動作にもよりますが、NULL を返してチェックするだけで十分だと思います。

クラスが実行時にプロパティを作成する場合は、例外をスローするのが良いかもしれませんが、コンパイル時にすべてのプロパティが存在する場合は NULL が最適です。

于 2012-05-28T16:16:52.687 に答える