本文目录一览:
php 去掉完全相同的重复数组
一、这个没有被合并,只是取的后面这个键名的值,
二、$input=array("11"="aaaa","22"="bbbb","33"="cccc","11"="aaada","44"="cccc1","55"="cccc");
$result
=
array_unique
($input);
print_r($result);
输出的结果:Array
(
[11]
=
aaada
[22]
=
bbbb
[33]
=
cccc
[44]
=
cccc1
)
键名33
和
55
的值完全一样的时候,后者会被干掉
如果你要的是键名和值完全一致的时候才删除一个的话,似乎不能,因为键名是不允许重复的
听你的情况似乎数据量很大,建议你使用
array_flip()函数
【php中,删除数组中重复元素有一个可用的函数,那就是array_unique(),
但是它并不是一个最高效的方法,使用array_flip()函数将比array_uniqure()在速度上高出五倍左右。】
例子:$input=array("11"="aaaa","22"="bbbb","33"="cccc","11"="aaada","44"="cccc1","55"="cccc");
$arr1
=
array_flip(array_flip($input));
print_r($arr1);
输出的结果:Array
(
[11]
=
aaada
[22]
=
bbbb
[55]
=
cccc
[44]
=
cccc1
)
php如何删除两个数组中相同的元素
php如何去除数组中相同的元素
如何去除数组中相同的元素?在php手册中有这样写
array_unique(PHP
4
=
4.0.1)
array_unique
--
移除数组中重复的值
说明
array
array_unique
(
array
array)
array_unique()
接受
array
作为输入并返回没有重复值的新数组。
注意键名保留不变。array_unique()
先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的
array
中同一个值的第一个出现的键名会被保留。
注:
当且仅当
(string)
$elem1
===
(string)
$elem2
时两个单元被认为相同。就是说,当字符串的表达一样时。
第一个单元将被保留。
例子
1.
array_unique()
例子
?php
$input
=
array
("a"
=
"green",
"red",
"b"
=
"green",
"blue",
"red");
$result
=
array_unique
($input);
print_r($result);
?
php如何去除数组中相同的元素
?php
$a=array("第一"=12,"第二"=23,34,45);
$b=array("第一"=11,"第二"=22,33,45);
foreach ($a as $key=$v1) {
echo $key."=". $v1."br /";
foreach($b as $key2=$v2){
if($v1==$v2){
unset($a[$key]);//删除$a数组同值元素
unset($b[$key2]);//删除$b数组同值元素
}
}
}
print_r($a);
print_r($b);
?