PHP foreach echo

#php #yii

#php #yii

Вопрос:

Я хочу повторить все содержимое в массиве $dataProvider, но это ошибка. Это уведомление об ошибке «Попытка получить свойство не-объекта». Вот функция в контроллере

 public function actionIndex()
    {
        $dataProvider = Administrator::model()->findAll();
        $this->render('index',array('dataProvider'=>$dataProvider));
    }
  

и это код представления

 <td><?php 
        foreach ($dataProvider as $data){
            $temp = $data->applicationAdmins->app_id; //the error occur here
            if($temp!=null){
                echo $data->applicationAdmins->app->status->name;
            }
            else {
            };
        }
    ?>
</td>
  

Комментарии:

1. выполните print_r($dataProvider)

2. print_r($data->applicationAdmins); и вы узнаете, есть ли у этого объекта app_id свойство или нет

3. попробуйте использовать var_dump для $dataProvider данных, чтобы увидеть, существует ли существующий объект, который вы повторно вызываете.

4. спасибо всем, я попробую, извините, я новичок, хе-хе

5. Скорее всего, модель администратора не имеет правильно установленных отношений applicationAdmins.

Ответ №1:

Для более четкого представления попробуйте использовать это:

 CVarDumper::dump($dataProvider, 10, true);
  

Это покажет вам, что $dataProvider содержит и какое его свойство является объектом.

Комментарии:

1. спасибо, чувак, я постараюсь, извините за вопрос новичка, я все еще новичок