我有一个这样的数组:
$names = array('John Doe','Marc','Rudolph', 'John Doe','Steve', 'Marc');
如何使用PHP删除重复的名称?
新数组必须是:
$names = array('John Doe','Marc','Rudolph','Steve');
这样做的功能是什么。?
答案 0 :(得分:3)
请先检查php.net手册。
$names = array('John Doe','Marc','Rudolph', 'John Doe','Steve', 'Marc');
$names = array_unique($names);
答案 1 :(得分:0)
使用array_unique()
:
$myArray = array(....);
$uniqueArray = array_unique( $myArray );
答案 2 :(得分:0)
您可以使用array_unique
但请注意not work
case sensitive array
{/ 1}}
$names = array('John Doe','Marc','Rudolph','John doe','Steve','Marc');
^-- Capital ^--Small
如果你跑
var_dump(array_unique($names));
输出
array
0 => string 'John Doe' (length=8)
1 => string 'Marc' (length=4)
2 => string 'Rudolph' (length=7)
3 => string 'John doe' (length=8)
4 => string 'Steve' (length=5
解决方案在检查是否唯一
之前,将所有内容转换为相同的案例var_dump(arrayUnique($names));
输出
array
0 => string 'John Doe' (length=8)
1 => string 'Marc' (length=4)
2 => string 'Rudolph' (length=7)
4 => string 'Steve' (length=5)
使用的功能
function arrayUnique($array) {
return array_intersect_key($array, array_unique(array_map("strtolower", $array)));
}