Добрый день.
Разбираясь с объектами PHP в том числе наткнулся на возможность создания динамических объектов используя предопределенный класс stdClass():
$std = new stdClass();
Так же мною был обнаружен такой пример инициализации динамического объекта:
$std = new stdClass();
$std->first = 1;
$std->second->third = 3;
print_R($std);
?>
stdClass Object
(
[first] => 1
[second] => stdClass Object
(
[third] => 3
)
)
Этот пример демонстрирует возможность создания "многомерного" объекта, по принципу соответствующего массива.
Однако попытка использовать данный код в рамках изучаемого мною фреймворка Laravel 4.1 всегда приводит к ошибке:
Creating default object from empty value
Со ссылкой на неверное выражение:
$std->second->third = 3;
Так возможно ли создавать многомерные динамические объекты? Или может просто в Laravel`е есть какие-то недопонимания с такого рода объектом. Но если просто создать "одномерный" объект stdClass, то всё работает нормально.
Спасибо за помощь.