1 回答
![?](http://img1.sycdn.imooc.com/545868550001f60202200220-100-100.jpg)
TA贡献1802条经验 获得超5个赞
此代码应执行以下操作:
$array = [
[
"financials" => [
[
"data" => [
"tag" => "revenue",
],
"value" => 1,
],
[
"data" => [
"tag" => "expenses",
],
"value" => 10,
],
],
"company" => [
"id" => 1,
"name" => "company, inc",
],
],
[
"company" => [
"id" => 1,
"name" => "company, inc",
],
"financials" => [
[
"data" => [
"tag" => "revenue",
],
"value" => 2,
],
[
"data" => [
"tag" => "expenses",
],
"value" => 20,
],
],
],
];
$company = $array[0]['company'];
$summedArray = $usedTags = [];
$summedArray['company'] = $company;
$summedArray['financials'] = [];
foreach ($array as $set) {
$data = $set['financials'];
foreach ($data as $dataSet) {
if (in_array($dataSet['data']['tag'], $usedTags) === false) {
$summedArray['financials'][] = [
"data" => [
"tag" => $dataSet['data']['tag']
],
"value" => $dataSet['value']
];
$usedTags[] = $dataSet['data']['tag'];
} else {
$summedArray['financials'][array_search($dataSet['data']['tag'], $usedTags)]['value'] += $dataSet['value'];
}
}
}
var_dump($summedArray);
希望对您有帮助
- 1 回答
- 0 关注
- 122 浏览
添加回答
举报