2016-10-20 3 views
0

У меня возникла ошибка, когда я пытаюсь напечатать значение массива в моем приложении Laravel. Пожалуйста, взгляните.Неопределенное свойство: stdClass :: ошибка в Laravel 5.1

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

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 

Таким образом я получил этот тип error.If я 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. Любая помощь будет оценена. Спасибо заранее.

+0

Возможно, это так {{$ value [0] [0] ['avg']}} – Jaimin

+0

@Jaimin Я пробовал этот способ его выбросить. 'Невозможно использовать объект типа stdClass as array' эту ошибку. –

+0

Попробуйте это {{$ value ['0'] ['avg']}} – Komal

ответ

0

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

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

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

+0

Не работает. Ужасно: 'Нельзя использовать объект типа stdClass as array' –

Смежные вопросы