共計 977 個字符,預計需要花費 3 分鐘才能閱讀完成。
PHP 中二維數組去重的方法有以下幾種:
- 使用 array_unique() 函數:該函數可以用于去除數組中的重復值,包括二維數組。但是該方法只能去除第一維數組中的重復值,對于第二維數組無效。
$array = array(array("apple", "banana"),
array("apple", "banana"),
array("orange", "banana")
);
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
print_r($result);
- 使用 array_map() 函數和 array_walk_recursive() 函數結合:利用 array_map() 函數將數組轉換成字符串,再使用 array_walk_recursive() 函數處理第二維數組,最后使用 array_unique() 函數去除重復值。
$array = array(array("apple", "banana"),
array("apple", "banana"),
array("orange", "banana")
);
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
array_walk_recursive($result, function (&$value) {$value = unserialize($value);
});
print_r($result);
- 使用循環遍歷和 in_array() 函數:通過循環遍歷二維數組,使用 in_array() 函數判斷當前元素是否已存在于結果數組中,如果不存在則添加進結果數組。
$array = array(array("apple", "banana"),
array("apple", "banana"),
array("orange", "banana")
);
$result = array();
foreach ($array as $item) {if (!in_array($item, $result)) {$result[] = $item;
}
}
print_r($result);
以上是幾種常用的二維數組去重方法,根據實際情況選擇適合的方法即可。
丸趣 TV 網 – 提供最優質的資源集合!
正文完