Please enable java script to visit.
NOTEBOOK
HOMEPHP / MySQLJS / HTMLWXappPythonC++Blender其他
PHP 数组去重复,去空值 - NOTEBOOK
PHP 数组去重复,去空值
PHP / MySQL
Posted on 2022-12-24
摘要 : PHP 数组去重复,用array_unique对二维数组去重处理。
php 5.2.9 版本增加了array_unique对多维数组的支持,在处理多维数组是需要设置sort_flags参数
array_filter 去空值
❱ 更快的去重复法:键值互换2次。

php有一个键值互换的方法array_flip,我们可以使用这个方法去重,因为键值互换,原来重复的值会变为相同的键。
然后再进行一次键值互换,把键和值换回来则可以完成去重。
使用array_flip方法去重比使用array_unique方法运行时间减少98%,内存占用减少4/5;
$a = array_flip($a);
$a = array_flip($a);


❱ 一维数组的重复项:

$aa = array("apple", "banana", "pear", "apple", "wail", "watermalon");
$bb = array_unique($aa);
print_r($bb);

// 结果如下:Array ( [0] => apple [1] => banana [2] => pear [4] => wail [5] => watermalon )


❱ 二维数组去重项

$result = array(0=>array('a'=>1,'b'=>'Hello'),1=>array('a'=>1,'b'=>'other'),2=>array('a'=>1,'b'=>'other'),
);

处理成

$result = array(0=>array('a'=>1,'b'=>'Hello'),1=>array('a'=>1,'b'=>'other')
);

使用方法

array_unique($result, SORT_REGULAR);




❱ 去完重复还要去空值

$a = array_filter($a);



PHP使用array_unique对二维数组去重处理
PHP array_unique() 函数