这是样本json编码的数组-
[
{"item_id":"8057","category":"MEN'S CLOTHING","quantity":"3.000"},
{"item_id":"22647","category":"WOMEN'S CLOTHING","quantity":"7.000"},
{"item_id":"1556","category":"MEN'S CLOTHING","quantity":"2.000"},
{"item_id":"4179","category":"WOMEN'S CLOTHING","quantity":"1.000"},
{"item_id":"21218","category":"WOMEN'S CLOTHING","quantity":"2.000"}
]我想把quantity加到同一个category上。
需要最终结果就像-
"MEN'S CLOTHING" : 5,
"WOMEN'S CLOTHING": 10注意:键“类别”的值是动态的。
发布于 2018-11-21 05:14:35
你可以试试这样的东西:
$dataArray = json_decode($jsonArray, true);
$allValuesWithCount = array();
foreach($dataArray as $arrayValues) {
$allValuesWithCount[$arrayValues['category']] += $arrayValues['quantity'];
}
print_r($allValuesWithCount);发布于 2018-11-21 05:43:39
您可以使用下面的代码来实现这一点:
$json = json_decode($string,true);
$allCount = [];
foreach ($json as $key => $value){
$allCount[$value['category']] += $value['quantity'];
}
foreach ($allCount as $category => $value){
echo $category ." : ".$value."<br>";
}但是,当我通过控制台以不同的PHP版本运行它时,它会给出警告并显示如下结果:
PHP注意:未定义索引:第15行中的男装in /home/akshay/so.php跟踪: PHP 1. {main}() /home/akshay/so.php:0 PHP注意:未定义索引:第15行中的女装in /home/akshay/so.php跟踪: PHP 1. {main}() /home/akshay/so.php:0
MEN'S CLOTHING : 5
WOMEN'S CLOTHING : 10https://stackoverflow.com/questions/53405556
复制相似问题