php二维数组去重怎么写
时间: 2023-03-27 20:03:14 浏览: 155
可以使用array_unique()函数对二维数组进行去重操作,示例代码如下:
$unique_arr = array_map("unserialize", array_unique(array_map("serialize", $arr)));
其中,$arr为需要去重的二维数组。
相关问题
php 二维数组去重怎么实现
你可以使用PHP内置函数`array_unique()`实现二维数组去重。这个函数可以去除数组中的重复值,并返回一个新的数组。具体操作如下:
```php
// 假设有一个二维数组 $arr
$arr = array(
array('id'=>1, 'name'=>'Tom'),
array('id'=>2, 'name'=>'Jerry'),
array('id'=>1, 'name'=>'Tom'), // 重复数据
array('id'=>3, 'name'=>'Kate')
);
// 使用 array_unique() 函数去重
$arr = array_unique($arr, SORT_REGULAR);
// 输出去重后的数组
print_r($arr);
```
输出结果如下:
```
Array
(
[0] => Array
(
[id] => 1
[name] => Tom
)
[1] => Array
(
[id] => 2
[name] => Jerry
)
[3] => Array
(
[id] => 3
[name] => Kate
)
)
```
注意,如果数组中包含不同类型的值,`array_unique()`函数可能会产生意想不到的结果。因此,建议在使用该函数前,先将数组中的数据类型统一起来。
php 根据一维数组去重二维数组
可以使用 PHP 中的 array_unique() 函数和 array_map() 函数来实现根据一维数组去重二维数组的操作。
具体实现可以参考以下代码:
```php
<?php
// 一维数组
$uniqueArr = array('A', 'B', 'C');
// 二维数组
$arr = array(
array('id' => 1, 'name' => 'A', 'age' => 20),
array('id' => 2, 'name' => 'B', 'age' => 25),
array('id' => 3, 'name' => 'C', 'age' => 30),
array('id' => 4, 'name' => 'A', 'age' => 35),
array('id' => 5, 'name' => 'B', 'age' => 40),
array('id' => 6, 'name' => 'C', 'age' => 45),
);
// 根据一维数组去重二维数组
$result = array_map("unserialize", array_unique(array_map("serialize", $arr)));
// 输出结果
print_r($result);
?>
```
在上面的代码中,我们首先定义了一个一维数组 $uniqueArr,然后定义了一个二维数组 $arr,其中包含了重复的元素。
接下来,我们使用 array_map() 函数将 $arr 数组中的每个元素转换为字符串,然后使用 array_unique() 函数去重,最后再使用 array_map() 函数将每个元素转换回数组格式。
最终的结果将只包含不重复的元素,输出结果如下:
```
Array
(
[0] => Array
(
[id] => 1
[name] => A
[age] => 20
)
[1] => Array
(
[id] => 2
[name] => B
[age] => 25
)
[2] => Array
(
[id] => 3
[name] => C
[age] => 30
)
)
```
阅读全文