我有来自return $data->group
的json数组,结果如下:
[{
"id": 2,
"name": "Grup 1",
"created_at": "2016-03-16 02:09:15",
"updated_at": "2016-03-16 02:09:15",
"pivot": {
"cabang_id": 28,
"group_id": 2
}}]
我想" id"和"名称"从这些数据。
我尝试使用$data->group->id
和$data->group->name
,但错误Undefined property: Illuminate\Database\Eloquent\Collection::$id
我如何从$data->group
获取?
答案 0 :(得分:1)
如果您考虑错误:
Undefined property: Illuminate\Database\Eloquent\Collection::$id
然后它显示您正在处理Collection
对象。您可以使用Alexy Mezenin提到的Collection
方法访问get('key')
属性。
所以你会在你的情况下做这样的事情:
$data->group->get('id')
查看docs / api以获取更多详细信息:
文档:https://laravel.com/docs/5.2/collections#method-get
Api:https://laravel.com/api/5.2/Illuminate/Database/Eloquent/Collection.html#method_get
通常情况下,您可以使用Eloquent model's magic methods直接按照您在您提供的代码示例中尝试执行的键名来访问其属性,即$data->group->id
。我相信这对你不起作用,因为你已经将数据作为json返回了,如果你在将它作为json返回之前访问该对象,那么你可能能够使用魔术方法访问这些属性。
答案 1 :(得分:0)
尝试使用json数据在对象上使用->get('id')
。或$request->input('id')
其中$request
是您的Request
对象。