判断步骤:1、用array_unique()去除数组中的重复值,语法“array_unique(原数组)”,会返回一个去重数组;2、用count()分别获取原数组和去重数组的数组长度,语法“count(数组)”;3、判断两个数组长度是否相等,“长度1 == 长度2”,如果两个数组长度相等,则数组内元素不重复,反之则数组内元素重复。
本教程操作环境:windows7系统、PHP8版、DELL G3电脑
判断数组内元素重不重复思路:
先去除数组中的重复值,获取去重后的数组
然后获取原数组和去重数组的长度
最后判断两个数组长度是否相等
在PHP中,可以使用array_unique()、count()函数和“==”运算符来实现。
判断步骤:
步骤1:使用array_unique()函数去除数组中的重复值
<?php header('content-type:text/html;charset=utf-8'); $arr=array(3,4,2,3,6,4,7,2,8,9,1); var_dump($arr); $res=array_unique($arr); echo "去重后的数组:"; var_dump($res); ?>
步骤2:使用count()函数获取原数组和去重数组的长度
<?php header('content-type:text/html;charset=utf-8'); $arr=array(3,4,2,3,6,4,7,2,8,9,1); var_dump($arr); $res=array_unique($arr); echo "去重后的数组:"; var_dump($res); $len1=count($arr); $len2=count($res); echo "原数组的长度为: $len1 <br>"; echo "去重数组的长度为: $len2 <br><br>"; ?>
步骤3:使用“==”运算符判断两个数组长度是否相等
如果两个数组长度相等,则数组里没有重复值
如果两个数组长度不相等,则表示有元素被去除了,即数组里有重复值。
<?php header('content-type:text/html;charset=utf-8'); $arr=array(3,4,2,3,6,4,7,2,8,9,1); var_dump($arr); $res=array_unique($arr); echo "去重后的数组:"; var_dump($res); $len1=count($arr); $len2=count($res); echo "原数组的长度为: $len1 <br>"; echo "去重数组的长度为: $len2 <br><br>"; if($len1==$len2){ echo "两数组长度相等,数组里有没有相同的元素"; }else{ echo "两数组长度不相等,数组里有相同的元素"; } ?>
说明:
array_unique()函数
array_unique() 函数用于移除数组中重复的值。如果两个或更多个数组值相同,只保留第一个值,其他的值被移除。
语法格式如下:
array array_unique ( array array )
array_unique() 接受 array 作为输入并返回没有重复值的新数组
注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
注: 当且仅当 (string) $elem1 === (string) $elem2
时两个单元被认为相同。就是说,当字符串的表达一样时。第一个单元将被保留。
count() 函数
count() 函数可以统计出数组里所有元素的数量,或对象中的属性个数,其语法格式如下:
count($array , $mode )
参数说明如下:
提示:如果 $array 既不是数组,也不是对象,count() 函数将返回 1;如果 $array 等于 NULL,则 count() 函数返回 0。
sizeof() 函数是 count() 函数的别名,也就是所 sizeof() 函数的功能及使用方法与 count() 函数完全相同。
推荐学习:《PHP视频教程》
以上是php数组内元素不重复怎么判断的详细内容。更多信息请关注PHP中文网其他相关文章!