【发布时间】:2017-05-14 10:31:54
【问题描述】:
我有一个多数组,其中包含一些名称相同的重复值(名称是一个元素)
我想对具有相同名称的每个数组的数量求和,然后取消设置第二个数组
示例:
<?php
$Array=array(
0=>array("name"=>"X","QTY"=>500),
1=>array("name"=>"y","QTY"=>250),
2=>array("name"=>"X","QTY"=>250)
);
?>
现在我想总结重复值如下。
结果:
<?php
$Array=array(
0=>array("name"=>"X","QTY"=>750),
1=>array("name"=>"y","QTY"=>250)
);
?>
更新
我发现这个函数在数组、foreach 和另一个循环中搜索也不起作用
<?php
function search($array, $key, $value)
{
$results = array();
if (is_array($array)) {
if (isset($array[$key]) && $array[$key] == $value) {
$results[] = $array;
}
foreach ($array as $subarray) {
$results = array_merge($results, search($subarray, $key, $value));
}
}
return $results;
}
?>
【问题讨论】:
-
array_reduce()是您要查找的 PHP 函数。 -
你试过
foreach()吗? -
@RST 已更新,foreach 没有帮助。
-
你是刚刚添加的功能还是实际使用了它?
-
我用它。我正在研究codeigniter FrameWork,一切正常,使用此功能我可以找到重复值,主要部分是求和值并删除另一个数组
标签: php arrays multidimensional-array duplicates