Неопределенное свойство: stdClass:: ошибка в Laravel 5.1

#php #arrays #laravel #laravel-5.1

#php #массивы #laravel #laravel-5.1

Вопрос:

Я получил ошибку при попытке напечатать значение массива в моем приложении Laravel.Пожалуйста, взгляните.

Мой контроллер:

 public function index()
{
    //
    $data = new Userflow();
    $result = $data->gobalsCount();
    $res = $data->yrLogins;
    $res1 = $data->mnLogins;
    $res2 = $data->dayLogins;
    $res3 = $data->hrLogins;
    $res4 = $data->minLogins;
    $res5 = $data->secLogins;
    $object = [$res,$res1,$res2,$res3,$res4,$res5];

   //dd($object);
    return view('userflow',compact('object'));
}
  

Моя модель:

 public $yrLogins = "";
public function gobalsCount(){
    $this->yrLogins = DB::SELECT("SELECT count(*)/(TIMESTAMPDIFF(YEAR,'2016-01-01 00:00:00',now()) 1) as avg from authtracker  where created_at >= '2016-01-01 00:00:00'");
................
  

Мой шаблон блейда:

   @foreach($object as $value)
  <td>{{ $value['0']->avg }}</td>                 
  @endforeach
  

Таким образом, я получил ошибку такого типа.Если i var_dump($object) , то он возвращает:

 array:6 [▼
  0 => array:1 [▼
    0 => {#1396 ▼
       "avg": "2.0000"
    }
  ]
  1 => array:1 [▶]
  2 => array:1 [▶]
  3 => array:1 [▶]
  4 => array:1 [▶]
  5 => array:1 [▶]
]
  

Как я могу напечатать это array значение ex: 2.0000 .
Будем признательны за любую помощь.Заранее спасибо.

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

1. может быть, это так {{ $value[0][0][‘avg’] }}

2. @Jaimin я пробовал этот способ, он выдает мне Cannot use object of type stdClass as array эту ошибку.

3. Попробуйте вот так {{ $value[‘0’][‘avg’] }}

4. Вы уверены, что у вас есть avg свойство в каждом объекте?

5.Просто проверьте другие значения $object[1][0]->avg $object[2][0]->avg .. Я полагаю, у вас пустая переменная.. Потому что ваш цикл foreach выглядит корректно

Ответ №1:

Может быть, попробовать этот способ,

 @foreach($object as $value)
  <td>{{$value[0][0]->avg}}</td>                 
@endforeach
  

Не пробовал, но должно сработать.

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

1. Не работает. Ошибка: Cannot use object of type stdClass as array