PHP获取二维数组中相同的元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP获取二维数组中相同的元素相关的知识,希望对你有一定的参考价值。
比如
array(array('id' => '10'),array('id' => '2'),array('id' => '10'),array('id' => '3'),array('id' => '2'))
怎么获取这个二维数组中相同id的数组有几个。id是多少啊!
$ids = array();
foreach($a as $k=>$v)
foreach($v as $value)
if(!in_array($value,$ids))
$ids[] = $value;
foreach($a as $k=>$v)
foreach($v as $value)
foreach($ids as $key=>$id)
if($id == $value)
$res[$key]['id'] = $id;
$res[$key]['num']++;
print_r($ids);
print_r($res);
Array
(
[0] => 10
[1] => 2
[2] => 3
)
Array
(
[0] => Array
(
[id] => 10
[num] => 2
)
[1] => Array
(
[id] => 2
[num] => 2
)
[2] => Array
(
[id] => 3
[num] => 1
)
)本回答被提问者采纳
求问php两个二维数组中每个元素的相加
类似array (size=3)
0 =>
array (size=3)
0 => int 0
1 => int 1
2 => int 2
1 =>
array (size=3)
0 => int 3
1 => int 4
2 => int 5
2 =>
array (size=3)
0 => int 6
1 => int 7
2 => int 8
这种格式的数组,有两个,把它们的每个值相加后,再输出相同的格式。
假设第二个数组和第一个一样,那么理想输出值为:
array (size=3)
0 =>
array (size=3)
0 => int 0
1 => int 2
2 => int 4
1 =>
array (size=3)
0 => int 6
1 => int 8
2 => int 10
2 =>
array (size=3)
0 => int 12
1 => int 14
2 => int 16
要如何遍历以及重组? 我是新手,这类问题不是很好受,麻烦懂的人帮助一下,非常感谢。
$array_1 = array(array(0,1,2),array(3,4,5),array(6,7,8));
$array_2 = array(array(0,1,2),array(3,4,5),array(6,7,8));
foreach ($array_1 as $k1=>$v1)
foreach ($v1 as $k2=>$v2)
$array_1[$k1][$k2] += $array_2[$k1][$k2];
echo "<pre>";
print_r($array_1);
echo "</pre>";
?>
运行结果
Array
(
[0] => Array
(
[0] => 0
[1] => 2
[2] => 4
)
[1] => Array
(
[0] => 6
[1] => 8
[2] => 10
)
[2] => Array
(
[0] => 12
[1] => 14
[2] => 16
)
)
望采纳 Thx
参考技术A //假设$a、$b是你的两个数组,下面把$b的值加到$a上foreach ($a as $k1=>$v1)
foreach ($v1 as $k2=>$v2) $a[$k1][$k2] += $b[$k1][$k2];
本回答被提问者和网友采纳
以上是关于PHP获取二维数组中相同的元素的主要内容,如果未能解决你的问题,请参考以下文章