Home > Backend Development > PHP Problem > How to determine if there are duplicate values ​​in an array in php

How to determine if there are duplicate values ​​in an array in php

PHPz
Release: 2023-04-17 13:51:18
Original
727 people have browsed it

PHP is a widely used open source scripting language and is very classic for use in web development. In PHP, array is a frequently used data type. When we need to iterate through an array and find if there are duplicate elements in it, we can use PHP's built-in functions array_count_values() and count(). This article will introduce readers to how to use PHP to write code to determine whether there are duplicate values ​​in an array.

1. array_count_values() function

The built-in function array_count_values() in PHP can return the number of each element in an array. We can use it to traverse an array and find duplicate elements in it. The code is as follows:

<?php
$arr = array(1, 2, 3, 2, 4, 3, 5);
$count = array_count_values($arr);  //使用array_count_values()统计数组中每个元素的数量
foreach ($count as $key => $value) {
    if ($value > 1) {
        echo $key . '重复了' . $value . '次';
    }
}
?>
Copy after login

This code will output:

2重复了2次
3重复了2次
Copy after login

2. count() function

The built-in function count() in PHP can return the number of elements in an array. By comparing the number of array elements with the number of deduplicated array elements, you can determine whether there are duplicate values ​​in the array. The code is as follows:

<?php
$arr = array(1, 2, 3, 2, 4, 3, 5);
if (count($arr) == count(array_unique($arr))) {  //使用count()和array_unique()函数判断数组中是否有重复元素
    echo &#39;该数组中没有重复元素&#39;;
} else {
    echo &#39;该数组中有重复元素&#39;;
}
?>
Copy after login

This code will output:

该数组中有重复元素
Copy after login
Copy after login

3. array_unique() function

The built-in function array_unique() in PHP can return the deduplicated elements of an array element. We can use this to determine if there are duplicate elements in the array. When the number of elements in the array after deduplication is less than the number of elements in the original array, it means that there are duplicate elements in the array. The code is as follows:

<?php
$arr = array(1, 2, 3, 2, 4, 3, 5);
$uniqueArr = array_unique($arr);  //使用array_unique()函数去重
if (count($arr) == count($uniqueArr)) {
    echo &#39;该数组中没有重复元素&#39;;
} else {
    echo &#39;该数组中有重复元素&#39;;
}
?>
Copy after login

This code will output:

该数组中有重复元素
Copy after login
Copy after login

To sum up, we can use the above 3 methods to determine whether there are duplicate elements in a PHP array. Readers can choose the method that suits them according to the actual situation.

The above is the detailed content of How to determine if there are duplicate values ​​in an array in php. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template