1 回答

TA貢獻2016條經驗 獲得超9個贊
您需要將 post 數組轉換為此結構以便于處理
$posts = [
'Model' => ['Mustang', 'Camero'],
'Color' => ['Red']
];
然后使用 foreach 過濾器:
$carJson = '{
"Inventory": [{
"id": "1",
"StockNumber": "1000",
"Make": "Ford",
"Model": "Mustang",
"Trim": "GT",
"Year": "2011",
"Color": "Red",
"Cylinders": "8",
"Transmission": "Manual"
}, {
"id": "2",
"StockNumber": "1001",
"Make": "Ford",
"Model": "Mustang",
"Trim": "GT",
"Year": "2012",
"Color": "Yellow",
"Cylinders": "8",
"Transmission": "Automatic"
}, {
"id": "3",
"StockNumber": "1002",
"Make": "Chevy",
"Model": "Camaro",
"Trim": "ZL1",
"Year": "2020",
"Color": "Red",
"Cylinders": "8",
"Transmission": "Manual"
},
{
"id": "4",
"StockNumber": "1005",
"Make": "Chevy",
"Model": "VW",
"Trim": "ZL1",
"Year": "2020",
"Color": "Red",
"Cylinders": "8",
"Transmission": "Manual"
}]
}';
$cars = json_decode($carJson, true)['Inventory'];
$posts = [
'Model' => ['Mustang', 'Camero'],
'Color' => ['Red']
];
$result = [];
foreach ($posts as $postKey => $postValue) {
foreach ($cars as $k => $car) {
if (array_key_exists($postKey, $car) && in_array($car[$postKey], $postValue)) {
$result[$k] = $car;
} else {
unset($cars[$k]);
unset($result[$k]);
}
}
}
print_r($result);
- 1 回答
- 0 關注
- 191 瀏覽
添加回答
舉報