Mal*_*ror 5 php arrays duplicates multidimensional-array
我有多维数组的这个问题.
给定以下多维数组:
Array(
[0] => Array("a", "b", "c")
[1] => Array("x", "y", "z")
[2] => Array("a", "b", "c")
[3] => Array("a", "b", "c")
[4] => Array("a", "x", "z")
)
Run Code Online (Sandbox Code Playgroud)
我想检查它的值并找到重复项(即键0,2和3),只留下一个键 - 值对删除其他键,导致这样的事情:
Array(
[0] => Array("a", "b", "c")
[1] => Array("x", "y", "z")
[2] => Array("a", "x", "z")
)
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点??
Tim*_*per 11
这将使用array_unique()
以下内容从阵列中删除重复项:
$new_arr = array_unique($arr, SORT_REGULAR);
Run Code Online (Sandbox Code Playgroud)
你可以简单地使用 in_array()
$data = Array(
0 => Array("a", "b", "c"),
1 => Array("x", "y", "z"),
2 => Array("a", "b", "c"),
3 => Array("a", "b", "c"),
4 => Array("a", "x", "z"),
);
$final = array();
foreach ($data as $array) {
if(!in_array($array, $final)){
$final[] = $array;
}
}
Run Code Online (Sandbox Code Playgroud)
这会让你像
array(3) {
[0] => array(3) {
[0] => string(1) "a"
[1] => string(1) "b"
[2] => string(1) "c"
}
[1] => array(3) {
[0] => string(1) "x"
[1] => string(1) "y"
[2] => string(1) "z"
}
[2] => array(3) {
[0] => string(1) "a"
[1] => string(1) "x"
[2] => string(1) "z"
}
}
Run Code Online (Sandbox Code Playgroud)