заполняем свойство и передаём в вид
$this->site['description'] = 'Описание страницы';
$site = (object) $this->site;
$this->set(compact('site'));
как видим получается что в каждом контроллере или экшене нужно прописывать
$site = (object) $this->site;
хочу убрать (object) из передачи в вид и сделать что-то вроде
public $site = (object) [];
но нихрена не получается, ошибка - Fatal error: Constant expression contains invalid operations
но свойство же не статичное и я ему просто задаю условие - пустой массив в виде объекта
короче нужно свойство один раз где-то обозвать объектом, чтобы при передаче в вид не писать (object)
________ посл. ред. 08.07.2019 в 23:18; всего 2 раз(а); by Вероломство
Создать обект с _get и _set не?
________ посл. ред. 08.07.2019 в 23:25; всего 1 раз(а); by simple_php
DELETED
Автор
8 июля 2019, в 23:26
Delete
Cloud (08.07.2019 в 23:21)
Один единственный вопрос.
На##Я?
у меня 100 контроллеров, в них может быть по несколько экшенов и в каждом при передаче в вид чтобы не писать (object) а сразу $this->site передавать, объявленное в базовом контроллере, как объект
и в виде выводить переменные не $var['a'], а как $var->a
Вероломство (08.07.2019 в 23:26)
Cloud (08.07.2019 в 23:21)
Один единственный вопрос.
На##Я?
у меня 100 контроллеров, в них может быть по несколько экшенов и в каждом при передаче в вид чтобы не писать (object) а сразу $this->site передавать, объявленное в базовом контроллере, как объект
и в виде выводить переменные не $var['a'], а как $var->a
Вероломство (08.07.2019 в 23:26)
Cloud (08.07.2019 в 23:21)
Один единственный вопрос.
На##Я?
у меня 100 контроллеров, в них может быть по несколько экшенов и в каждом при передаче в вид чтобы не писать (object) а сразу $this->site передавать, объявленное в базовом контроллере, как объект
и в виде выводить переменные не $var['a'], а как $var->a
Подскажу лисапед
Тупо,но схема рабочая будет
$this->site = json_decode(json_encode($this->site));
Без TRUE ты получишь объект