Эй, у меня есть небольшой тестовый набор, настроенный следующим образом:
class T {
public function __construct(){
$obj = new SimpleXMLElement(file_get_contents('vote.xml'));
return $obj;
}
}
$vv=new T;
var_dump($vv);
Дамп $vv
равен, в данном случае, object(T)#1 (0) { }
- другими словами, не ожидаемый результат
Когда я возвращаю объект в отдельной функции, как здесь:
class T {
public function stackOverflow(){
$obj = new SimpleXMLElement(file_get_contents('vote.xml')); // or simplexml_load_file
return $obj;
}
}
$vv=new T;
$vv = $vv->stackOverflow();
var_dump($vv);
Вывод
соответствует ожидаемому (объект, содержащий содержимое элемента «voice.xml», теги и атрибуты). Почему я не могу вернуть объект внутри конструктора? Спасибо!