PHP判断数组是否有重复值、获取重复值
发布日期:2025-05-04 03:45:30
浏览次数:10
分类:精选文章
本文共 1265 字,大约阅读时间需要 4 分钟。
判断是否有重复值
判断数组中是否存在重复值,可以通过比较数组的长度和去重后的数组长度来实现。具体方法如下:
if (count($arr) != count(array_unique($arr))) { echo '该数组中存在重复值';} 获取重复的值
对于一维数组,可以使用 array_diff_assoc 函数来获取重复值。该函数会返回一个数组,包含原数组中去重后被去除的元素。
function getRepeat($arr) { $unique_arr = array_unique($arr); $repeat_arr = array_diff_assoc($arr, $unique_arr); return $repeat_arr;} 二维数组的重复值判断
对于二维数组,需要根据指定的键值对进行判断。如果二维数组中的某些键值对在多个元素中重复出现,则视为重复值。以下是一个实现方法:
function getRepeat($arr, $keys) { $unique_arr = array(); $repeat_arr = array(); foreach ($arr as $k => $v) { $str = ""; foreach ($keys as $a => $b) { $str .= "{$v[$b]},"; } if (!in_array($str, $unique_arr)) { $unique_arr[] = $str; } else { $repeat_arr[] = $v; } } return $repeat_arr;} 示例
以下是一个实际案例:
$arr1 = array("aaa","bbb","ccc","ddd","aaa","bbb");$arr2 = array("aaa","bbb","ccc","ddd","aaa");$arr3 = array("aaa","bbb","lll","ddd","aaa","bbb");$arr = array($arr1, $arr2, $arr3);$keys = array(0, 1, 2);var_dump(getRepeat($arr, $keys)); 输出结果:
array (size=1)0 => array (size=5) 0 => string 'aaa' (length=3) 1 => string 'bbb' (length=3) 2 => string 'ccc' (length=3) 3 => string 'ddd' (length=3) 4 => string 'aaa' (length=3)
通过上述方法,可以轻松判断和获取数组中的重复值。
发表评论
最新留言
关注你微信了!
[***.104.42.241]2026年06月14日 21时25分18秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
php获取用户真实IP和防刷机制
2023-03-01
php获取网页内容的三种方法
2023-03-01
R-CNN算法优化策略
2023-03-01
PHP规范PSR0和PSR4的理解
2023-03-01
php解析ipa包,获取logo
2023-03-01
R&Rstudio安装各种包
2023-03-02
php设置cookie,在js中如何获取
2023-03-02
php设置socket超时时间
2023-03-02
php设计模式 萨莱 pdf,PHP设计模式 建造者模式
2023-03-02
PHP设计模式之----观察者模式
2023-03-02
php设计模式之装饰器模式
2023-03-02
R&Python Data Science系列:数据处理(5)--字符串函数基于R(一)
2023-03-02
PHP设计模式:观察者模式
2023-03-02
php访问mysql(1)
2023-03-02
php详细学习1
2023-03-02
php语言优劣
2023-03-02
PHP语言最优雅的支付SDK扩展包
2023-03-02