未定义的属性:Laravel 5.1中的stdClass :: error

时间:2016-10-20 08:44:54

标签: php arrays 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

通过这种方式我得到了这种类型的错误。如果我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 [▶]
]

如何打印此arrayex: 2.0000。 任何帮助将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

可以尝试这种方式,

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

Haven没有尝试,但应该工作。