php array_unique处理多维数组的方法

avatar
作者
筋斗云
阅读量:0

array_unique 函数只能用于处理一维数组,不适用于多维数组。要处理多维数组,您可以使用以下方法:

方法1:使用 array_mapserialize

function array_unique_multidimensional($array) {     $serialized = array_map('serialize', $array);     $unique = array_unique($serialized);     return array_intersect_key($array, $unique); }  $multidimensionalArray = [     ['id' => 1, 'name' => 'A'],     ['id' => 2, 'name' => 'B'],     ['id' => 1, 'name' => 'A'],     ['id' => 3, 'name' => 'C'] ];  $uniqueArray = array_unique_multidimensional($multidimensionalArray); print_r($uniqueArray); 

方法2:使用 foreach 循环

function array_unique_multidimensional($array) {     $result = [];     foreach ($array as $item) {         if (!in_array($item, $result)) {             $result[] = $item;         }     }     return $result; }  $multidimensionalArray = [     ['id' => 1, 'name' => 'A'],     ['id' => 2, 'name' => 'B'],     ['id' => 1, 'name' => 'A'],     ['id' => 3, 'name' => 'C'] ];  $uniqueArray = array_unique_multidimensional($multidimensionalArray); print_r($uniqueArray); 

这两种方法都可以有效地处理多维数组并去除重复项。根据您的需求和喜好选择合适的方法。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!