【发布时间】:2017-03-03 10:07:51
【问题描述】:
我需要更多关于 PHP 数组和我遇到的问题的帮助。我有一个这样的数组:-
array(2) {
[0]=>
array(2) {
[0]=>
array(2) {
["count"]=>
string(3) "100"
["id"]=>
int(46)
}
[1]=>
array(2) {
["count"]=>
string(3) "300"
["id"]=>
int(53)
}
}
[1]=>
array(1) {
[0]=>
array(2) {
["count"]=>
string(3) "200"
["id"]=>
int(46)
}
}
}
但是,我希望它看起来更像这样的数组:-
array(2) {
[0]=>
array(2) {
["count"]=>
string(3) "300" <--- This has been added from Array 1 and 2
["id"]=>
int(46)
}
[1]=>
array(2) {
["count"]=>
string(3) "300"
["id"]=>
int(53)
}
}
基本上,如果两个区域中的 id 相同,我希望将计数相互添加,但如果不是,则只需将其单独放置并包含在数组中。
我已经使用了许多数组函数,例如 array_merge 和 array_push,但我对它是如何工作的想法已经不多了。我也开始使用 if 语句进行 foreach 工作,但我只是让自己完全糊涂了。我只需要第二双眼睛来看看这个问题,看看它是如何解决的。
再次感谢大家。
【问题讨论】:
-
这种数组有用吗?
array(array(["count"]=>300,["id"]=46),array(["count"]=>300,["id"]=53))。这可以通过自定义函数来实现。 -
嗨,moni_dragu,我不确定你想说什么?这就是我试图从两个数组中实现的目标。
-
实际上我试图提出一种不同的数组类型,但分心了。这是我指的类型:
array('id'=>'count'),在您的示例中是指array('46'=>'300','53'=>'300') -
实际上这可能是可以使用的,但我仍在尝试找到一种方法将它们合并在一起并添加值。
-
然而,这被两个查询转储出来,一个用于活动表,一个用于存档表。