假設我有這個[{"id":21},{"id":22}]數組來自這個:$schedules = []; foreach ($routes as $route) { $schedules[] =Schedule::select('id') ->whereIn('route_id', $route) ->latest() ->first(); }所以,我想像這樣從中提取價值[21,22],所以我這樣做了:$values = $schedules->pluck('id')->toArray();這顯示此錯誤調用數組上的成員函數 pluck()
3 回答

手掌心
TA貢獻1942條經驗 獲得超3個贊
要使用您擁有的代碼實現您的目標,您可以使用array_map:
$values = array_map(function ($item) {
return $item->id;
}, $schedules);
或者,您可以簡單地id通過使用->first()->id或獲取初始值value('id'):
foreach ($routes as $route) {
$schedules[] =Schedule::select('id')
->whereIn('route_id', $route)
->latest()
->value('id');
}

LEATH
TA貢獻1936條經驗 獲得超7個贊
您可以先收集它,然后使用pluck.
我假設你有以下數據
$schedules = [
["id" => 21],
["id" => 22]
];
return collect($schedules)->pluck('id')->toArray();

婷婷同學_
TA貢獻1844條經驗 獲得超8個贊
- 3 回答
- 0 關注
- 458 瀏覽
添加回答
舉報
0/150
提交
取消