Home >Backend Development >PHP Problem >How to determine if the elements in a php array are not repeated

How to determine if the elements in a php array are not repeated

青灯夜游
青灯夜游Original
2023-01-14 18:50:471514browse

Judgment steps: 1. Use array_unique() to remove duplicate values ​​in the array. The syntax "array_unique (original array)" will return a deduplicated array; 2. Use count() to obtain the original array and the deduplicated array respectively. Repeat the array length of the array, the syntax is "count(array)"; 3. Determine whether the lengths of the two arrays are equal, "length 1 == length 2", if the lengths of the two arrays are equal, the elements in the array are not repeated, otherwise the arrays The inner elements are repeated.

How to determine if the elements in a php array are not repeated

The operating environment of this tutorial: windows7 system, PHP8 version, DELL G3 computer

The idea of ​​judging whether the elements in the array are repeated:

  • First remove duplicate values ​​in the array and obtain the deduplicated array

  • Then obtain the original array and the deduplicated array Length

  • Finally determine whether the lengths of the two arrays are equal

In PHP, you can use the array_unique(), count() functions and "= =" operator to achieve.

Judgment steps:

Step 1: Use the array_unique() function to remove duplicate values ​​in the array

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$arr=array(3,4,2,3,6,4,7,2,8,9,1);
var_dump($arr);
$res=array_unique($arr);
echo "去重后的数组:";
var_dump($res);
?>

How to determine if the elements in a php array are not repeated

Step 2: Use the count() function to obtain the length of the original array and the deduplicated array

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$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>";
?>

How to determine if the elements in a php array are not repeated

Step 3: Use the "==" operator to determine whether the lengths of the two arrays are equal

  • If If the lengths of the two arrays are equal, there are no duplicate values ​​in the arrays

  • If the lengths of the two arrays are not equal, it means that elements have been removed, that is, there are duplicate values ​​in the arrays.

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$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 "两数组长度不相等,数组里有相同的元素";
}
?>

How to determine if the elements in a php array are not repeated

Description:

array_unique() function

array_unique() function is used to remove duplicate values ​​from an array. If two or more array values ​​are the same, only the first value is retained and the other values ​​are removed.

The syntax format is as follows:

array array_unique ( array array )

array_unique() accepts array as input and returns a new array without duplicate values

Note that the key names remain unchanged. array_unique() sorts the values ​​first as strings, then retains only the first encountered key for each value, and then ignores all subsequent keys. This does not mean that the first occurrence of the same value in an unsorted array will be preserved.

Note: Two units are considered the same if and only if (string) $elem1 === (string) $elem2. That is, when the expressions of the strings are the same. The first unit will be retained.

count() function

count() function can count the number of all elements in an array, or the number of attributes in an object. Its syntax format is as follows:

count($array , $mode )

The parameter description is as follows:

  • $array: is the array or object to be counted;
  • $mode: is an optional parameter and can be omitted.
    • If the $mode parameter is omitted, or set to COUNT_NORMAL or 0, the count() function will not detect multidimensional arrays;
    • If $mode is set to COUNT_RECURSIVE or 1, the count() function Will recursively count the number of elements in the array, especially useful for counting the number of elements in multi-dimensional arrays.

Tip: If $array is neither an array nor an object, the count() function will return 1; if $array is equal to NULL, the count() function Return 0.

sizeof() function is an alias of count() function, that is, the function and usage of sizeof() function are exactly the same as count() function.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to determine if the elements in a php array are not repeated. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn