我很難嘗試從Laravel中的集合中創建關聯數組。然後該數組應該用於案例檢查。從laravel中的集合創建用於檢查目的的關聯數組
我得到我的收藏是這樣的:
$collected_items = $user->collected_items()->where('model_id', '=', $model_id)->get();
我需要從這個集合只提取了一些相關的數據,如'color_id'
我需要檢查color_id
因爲我如果color_id = 0, 1 or 2
運行不同的代碼
因爲我不想爲每個案例做一個數據庫查詢,所以我想我會更好地加載數據,然後把它放在一個關聯數組中;
不過,對於我的生活,我不能創建這個數組 我想:
$array_of_colors = []
foreach ($collected_items as $i) {
if ($i['color_id'] == 0) {
$array_of_colors += ['black' => $i->model_color_id];
}
if ($i['color_id'] == 1) {
$array_of_colors += ['colored' => $i->model_color_id];
}
if ($i['color_id'] == 2) {
$array_of_colors += ['white' => $i->model_color_id];
}
}
然後我會使用$array_of_colors
檢查,如果我有黑色的,然後做一些事情的情況下,是白色的東西其他等等等
你實際上得到一個集合回你看着使用'filter'選項? – Pitchinnate
https://laravel.com/docs/5.4/collections#method-filter – Pitchinnate
你是對的,謝謝,我使用過濾器()選項,然後max()和min()對已過濾的集合分配值I需要一些變量。 – Chriz74