30
Апр
2013

Как вернуть false из конструктора класса

У меня при создании класса в конструкторе определяется, существует ли вообще переданное через get имя метода этого класса.

class My_class{
 public $error;
 public function __construct(){
   $action  = $_GET['action'];
   if (!method_exists(__CLASS__,$action)){
     $this->error = "Метод класса не найден";
   } 
 }
}

И при создании экземпляра проверяю :

$obj = new My_class();
if ($obj->error) ... и т.д.

Как все это сделать лаконичней? Без дополнительного свойства $error, чтобы конструктор в случае неудачи возвращал не объект, а null ? Пробовал из конструктора возвратить null или false - но объект все равно благополучно создается.

Источник: https://ru.stackoverflow.com/questions/216461/%D0%9A%D0%B0%D0%BA-%D0%B2%D0%B5%D1%80%D0%BD%D1%83%D1%82%D1%8C-false-%D0%B8%D0%B7-%D0%BA%D0%BE%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D0%BE%D1%80%D0%B0-%D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B0

Тебе может это понравится...

Добавить комментарий