Задать вопрос

Почему $this частично скрывается в Yii CActiveRecord?

Добрый вечер. Подскажите пожалуйста, мне надо получить все свойства модели наследованной от CActiveRecord. Код получения свойств:
class MyModel extends CActiveRecord
{
    public $property1;
    public $property2;
    public $property3;
    
    public function getProperties()
    {
        foreach($this as $key => $value)
        {
            // ...
        }
    }

}


В итоге выводится содержимое MyModel::_attributes (*CActiveRecord*), а мои $property1, $property2, $property3 где-то теряются. Почему так? Можно ли исправить?
  • Вопрос задан
  • 2358 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Onskills
    PHP: базовый курс
    1 месяц
    Далее
  • teamcoding
    TC200PY Разработка PHP веб-приложений на Yii2. Шаблон приложения advanced
    3 месяца
    Далее
  • FructCode
    Yii2 Фреймворк
    2 месяца
    Далее
Решения вопроса 1
@PiloTeZ Автор вопроса
...
Проблема решена. Вместо foreach($this...) использую foreach(get_object_vars('MyModel')...).
Как раз корректно получает публичные свойства, которые мне нужны
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы