刀片foreach将输出转换为对象

时间:2016-12-09 10:03:36

标签: php laravel blade

我试图找出如何在刀片文件中提供数据输出,Laravel外观;

  

喜欢$data->name

但我无法将输出作为对象输出。我想在我可以在foreach中正确循环之前我必须创建一个数组数组,但这感觉不是正确的方法。

我对Laravel相对较新,我希望这样做很好,有人能指出我正确的方向吗?提前致谢

控制器:

$data = collect($this->api->organization->index())->toArray();

return View::make('pages.organization.index', array('data' => $data[0]));

查看:

@foreach($data as ((object)$organization))
    {{ $organization->name }}
@endforeach

我知道这不起作用,但我认为这说明了我的问题。

修改

我没有意识到$data = collect($this->api->organization->index());正在返回一个包含所有数据数组的数组,因为我没有在我的回报中将其命名为:

return (object)['all' => $data];

添加all后,我可以像我想的那样在我的视图中引用代码。我知道这不是一个非常详细的答案,如果你遇到同样的问题,我会编辑答案。

1 个答案:

答案 0 :(得分:3)

对象:

$data = collect($this->api->organization->index());
@foreach($data as $organization))
    {{ $organization->name }}
@endforeach

阵列:

$data = collect($this->api->organization->index())->toArray();
@foreach($data as $organization))
    {{ $organization['name'] }}
@endforeach