PHP的array_unique()
函數只能用于一維數組,無法直接用于多維數組。如果需要在多維數組中去除重復的元素,可以先將多維數組展開為一維數組,然后再使用array_unique()
函數進行去重。
以下是一個示例代碼,用于在多維數組中去除重復的元素:
function array_unique_recursive($array) {
$flatten = [];
array_walk_recursive($array, function($value) use (&$flatten) {
$flatten[] = $value;
});
$unique = array_unique($flatten);
$result = [];
foreach ($unique as $value) {
$result[] = $value;
}
return $result;
}
$multiDimensionalArray = [
[1, 2, 3],
[4, 5, 6],
[1, 2, 3],
];
$uniqueArray = array_unique_recursive($multiDimensionalArray);
print_r($uniqueArray);
在這個示例中,array_unique_recursive()
函數接收一個多維數組作為參數,首先將多維數組展開為一維數組,然后使用array_unique()
函數去除重復的元素,最后再將去重后的元素組裝成一個新的數組。