我需要帮助过滤我的二维数组,例如下面的例子:
array(29) {
[0]=> array(2) {
[0]=> string(16) "Andorra La Vella"
[1]=> string(2) "AD"
}
[1]=> array(2) {
[0]=> string(16) "Andorra La Vella"
[1]=> string(2) "AD"
}
[2]=> array(2) {
[0]=> string(16) "Andorra La Vella"
[1]=> string(2) "AD"
}
[3]=> array(2) {
[0]=> string(16) "Andorra La Vella"
[1]=> string(2) "AD"
}
[4]=> array(2) {
[0]=> string(12) "Les Escaldes"
[1]=> string(2) "AD"
}...
如何从数组中过滤掉任何冗余值?例如key [0]与key [1] [2] [3]具有相同的值,我想从我的数组中删除这个冗余值。
我试过array_filter()
但没有运气。我试过array_splice()
和unset()
,两个都没有运气。
php为此提供了任何本机数组函数吗?
感谢,
AJI
答案 0 :(得分:2)
如果您想删除重复项,可以在另一个thread
上找到更多信息享受!
答案 1 :(得分:0)
可以array_unique()
这样做吗?不确定它是否适用于嵌套数组。
编辑:不,它不能这样做。
注意:请注意,array_unique()不是 打算在多维度上工作 阵列。
答案 2 :(得分:0)
$to_filter = array(); // your array
$filtered = array(); // unique values
array_walk($to_filter, function($v, $k) use (&$filtered) {
if(!in_array($v, $filtered)) {
$filtered[] = $v;
}
});
使用PHP 5.3的匿名函数,它看起来有多干净..,。