我通常用雄辩的拉勒维尔分别挑选我的物品。
$b = Booking::where("id","=",$id)->get();我得到的是一个照明\数据库\雄辩\集合与一个项目。稍后我将它们放在一个数组中,这样我就有了一个由这些照明\数据库\雄辩\Collection对象组成的数组。
然而,有时我需要更多的,所以我做了这样的事情:
$bs = Booking::where("date","=",$today)->get();现在这是一个包含多个项的集合。是否有一种简单的方法可以用单个项目更改照明\数据库\雄辩\集合中多个项目的照明\数据库\雄辩\集合?
我当然能做到:
$bs = Booking::where("date","=",$today)->get();
foreach ($bs as $i=>$b) $bs2[] = Booking::where("id","=",$b->id)->get();但是再次从DB中选择似乎是一个非常愚蠢的解决方案。
编辑:
如果我这样做,我会:
->toArray()创建一个包含15个数组的数组。这不是我想要的-我需要这些东西。正如雄辩者提供的特性一样,日期字段自动成为一个DateTime对象
发布于 2018-05-12 14:07:54
使用toArray()函数,你就可以出发了,
$bs = Booking::where("date","=",$today)->get()->toArray();现在,您将拥有从DB返回的数据数组。
发布于 2018-05-12 18:41:35
你可以这样做:
$bs = Booking::where("date","=",$today)->get();
foreach ($bs as $i=>$b) {
$bs2[] = collect([$b]);
}这为您提供了一个Illuminate\Support\Collection集合数组,每个集合包含一个项。
如果您需要Illuminate\Database\Eloquent\Collection集合:
$bs2[] = new \Illuminate\Database\Eloquent\Collection([$b]);发布于 2022-02-04 17:18:40
试试看以下几点。
$bs = Booking::where("date", "=", $today)->get();
$new_bs = $bs->toArray();https://stackoverflow.com/questions/50305099
复制相似问题