PHPのマジックメソッドのコンテキストでの `trigger_error`と` throw Exception`
私はtrigger_error、魔法のメソッドのコンテキストでの正しい使用法(もしあれば)について同僚と議論しています。まず、この1つの場合を除いて、それtrigger_errorは避けるべきだと思います。 1つのメソッドを持つクラスがあるとします foo() class A { public function foo() { echo 'bar'; } } まったく同じインターフェースを提供したいが、すべてのメソッド呼び出しをキャッチするためにマジックメソッドを使用するとします class B { public function __call($method, $args) { switch (strtolower($method)) { case 'foo': echo 'bar'; break; } } } $a = new A; $b = new B; $a->foo(); //bar $b->foo(); //bar 両方のクラスの応答方法は同じですfoo()が、無効なメソッドを呼び出す場合は異なります。 $a->doesntexist(); //Error $b->doesntexist(); …