【发布时间】:2017-06-30 04:34:55
【问题描述】:
如果我运行$collection->filter(myFilter),Laravel 会像这样为集合中的每个模型添加键,这很烦人:
{
"4": {
"myObject": "data"
},
"7": {
"myObject": "data"
}
}
如何去掉“4”和“7”,让它成为我的对象数组?
我运行的代码是:
$obj = Cars::with('brand')->orderBy('id')->get();
return $obj->filter(function($value, $key)
{
return $value->display == true;
});
【问题讨论】:
-
我觉得
flatten()可能会满足您的需求,但您需要提供更多示例代码来查看如何获得此输出。 -
是的,
flatten()应该可以解决问题 -
@Dwight 添加了代码 - 展平工作。随意添加一个答案让我接受。
-
@tgun926 虽然
flatten()恰好在这种情况下有效,但values()是合适的使用方法。我添加了一个带有解释的答案。
标签: php json laravel laravel-collection