Laravel使用ORM从数据库中默认取出来的就是一个collection,也就是集合,这个集合包比数组使用起来更加方便,因为laravel创建了很多针对集合的链式操作:
具体可以看:
laravel\framework\src\Illuminate\Support\Collection.php
在这里就不一一列举了,例如我想取出集合里面的第一个元素,直接first()即可;
$firstStudentId = $studentId->first();
例如,我想取出集合中的id一列值,直接pluck(‘id’)即可,collection可以看作是ORM的延续.
protected $visible = ['modules', 'id','name'];
public function modules()
{
return $this->hasMany('App\Model\Module','root','id');
}
$products->transform(function ($value) {
return [
'value' => $value->id,
'label' => $value->name,
'children' => $value->modules->map(function ($v) {
return [
'label' => $v->name,
'value' => $v->id,
];
}),
];
});