Возврат анонимного объекта с инициализацией его поля

Avron2

Новичок
Почему нельзя далать так?
PHP:
return new Pages()->content = "The page with id '$id' not found!";
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Засунуть инициализацию в конструктор?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Просто при твоем примере не совсем понятно, что же должно быть возвращено, обьект, или его свойство, после создания обьекта.

Есть как бы еще Singleton, который при подобном подходе вернет свойство.
 

Avron2

Новичок
Нужно вернуть объект класса Pages.
На самом деле это объект модели для виджета CKEditorWidget в Yii.
Попробовал как в 1-ом посте и возник вопрос из любопытства. Видно синтаксисом не предусмотрено.
 

Redjik

Джедай-мастер
о боги - не юзай виджеты для висвигов - они все подключаются парой строчек в html
 

Avron2

Новичок
о боги - не юзай виджеты для висвигов - они все подключаются парой строчек в html
Я сначала так и сделал, а потом в документации по yii попался на глаза виджет, вот и прикрутил его.
Что с виджетом, что без - количество строчек одинаково. Там в основном параметры редактора и пути к FCKEditor.
 

Redjik

Джедай-мастер
я вообще ставлю tinymce и elFinder - 2-rc - все без виджетов, хотя в экстеншенах есть для них обертки, но настолько намудреные... у меня все логично и парой строчек подключается... не нужно оно там...
 

Yaponchick

Новичок
Ответ кроется в __set:

Note:
The return value of __set() is ignored because of the way PHP processes the assignment operator. Similarly, __get() is never called when chaining assignments together like this:

Код:
$a = $obj->b = 8;
Как вариант:

Код:
(($x = new Pages())->content = "The page with id '$id' not found!") && return $x;
 
Сверху