我有这样的数组:
SimpleXMLElement Object
(
[item] => Array
(
[0] => SimpleXMLElement Object
(
[baseCurrency] => GEL
[baseName] => Georgian lari
[targetCurrency] => USD
[exchangeRate] => 0.32404144
[inverseRate] => 3.08602506
)
[1] => SimpleXMLElement Object
(
[baseCurrency] => GEL
[baseName] => Georgian lari
[targetCurrency] => EUR
[exchangeRate] => 0.28701079
[inverseRate] => 3.48418959
)
)
)
我想用[targetCurrency]
对其进行过滤,例如:
Array
(
[item] => Array
(
[USD] => Array
(
[baseCurrency] => GEL
[baseName] => Georgian lari
[targetCurrency] => USD
[exchangeRate] => 0.32404144
[inverseRate] => 3.08602506
)
[EUR] => Array
(
[baseCurrency] => GEL
[baseName] => Georgian lari
[targetCurrency] => EUR
[exchangeRate] => 0.28701079
[inverseRate] => 3.48418959
)
)
)
我该怎么办?
答案 0 :(得分:0)
您可以这样做:
$arr = [
[
'baseCurrency' => 'GEL',
'baseName' => 'Georgian lari',
'targetCurrency' => 'USD',
'exchangeRate' => 0.32404144,
'inverseRate' => 3.08602506,
],
[
'baseCurrency' => 'GEL',
'baseName' => 'Georgian lari',
'targetCurrency' => 'EUR',
'exchangeRate' => 0.28701079,
'inverseRate' => 3.48418959,
]
];
$newArr = [];
foreach ($arr as $value) {
array_push($newArr, [
$value['targetCurrency'] => $value
]);
}
$newArr
的值为:
[
[
"USD": [
"baseCurrency": "GEL",
"baseName": "Georgian lari",
"targetCurrency": "USD",
"exchangeRate": 0.32404144,
"inverseRate": 3.08602506
]
],
[
"EUR": [
"baseCurrency": "GEL",
"baseName": "Georgian lari",
"targetCurrency": "EUR",
"exchangeRate": 0.28701079,
"inverseRate": 3.48418959
]
]
]