以下ID为16的数组键正在进行两次。我们可以删除这个重复的ID。 (如果ID是重复的其他字段,请删除)
Array
(
[1] => Array
(
[ID] => 16
[username] => dudda
[message-time] => 2016-08-25 12:12:53
)
[2] => Array
(
[ID] => 16
[username] => dudda
[message-time] => 2016-08-25 12:01:54
)
[3] => Array
(
[ID] => 3
[username] => himanshu
[message-time] => 2016-08-15 12:53:38
)
[4] => Array
(
[ID] => 15
[username] => dawinder
[message-time] => 2016-08-10 11:40:33
)
)
答案 0 :(得分:1)
我们使用它来删除各种重叠查询的结果。
$input = array_map("unserialize", array_unique(array_map("serialize", $input)));
答案 1 :(得分:1)
array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )
阅读本文:http://php.net/manual/en/function.array-unique.php
例如
<?php
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
?>
输出将是:
Array
(
[a] => green
[0] => red
[1] => blue
)
答案 2 :(得分:1)
我有解决方案
我已经为此开发了这个功能:
function unique_multidim_array($array, $key) {
$temp_array = array();
$i = 0;
$key_array = array();
foreach($array as $val) {
if (!in_array($val[$key], $key_array)) {
$key_array[$i] = $val[$key];
$temp_array[$i] = $val;
}
$i++;
}
return $temp_array;
}
现在,从您的代码
中调用此函数这样的事,
$details = unique_multidim_array($array_name,'key');