Home  >  Article  >  Backend Development  >  How to check if array values ​​are the same in php

How to check if array values ​​are the same in php

PHPz
PHPzOriginal
2023-04-18 09:06:351449browse

In PHP programming, we often need to determine whether the values ​​in the array are the same. This problem seems simple, but there are many ways to implement it. This article will introduce you to several common PHP array value comparison methods.

1. Use the in_array() function

The in_array() function is a built-in function of PHP that can be used to check whether the array contains a certain value. The following is a code example that uses the in_array() function to determine whether the same value exists in the array:

<?php

$array = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;apple&#39;);

if (in_array(&#39;apple&#39;, $array)) {
    echo &#39;数组中存在相同值&#39;;
} else {
    echo &#39;数组中不存在相同值&#39;;
}

?>

In the above code, we first define an array $array, which has two 'apple' elements. Then we use the in_array() function to check whether the 'apple' element exists in the array. If it exists, it outputs 'the same value exists in the array', otherwise it outputs 'the same value does not exist in the array'.

2. Use the array_diff_assoc() function

The array_diff_assoc() function can be used to compare the keys and values ​​of two or more arrays and return the difference. If the two arrays are identical, the difference set is an empty array. We can use this function to determine whether the same value exists in the array. The following is a code example that uses the array_diff_assoc() function to determine whether the same value exists in an array:

<?php

$array = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;apple&#39;);

if (count($array) !== count(array_diff_assoc($array, array_unique($array)))) {
    echo &#39;数组中存在相同值&#39;;
} else {
    echo &#39;数组中不存在相同值&#39;;
}

?>

In the above code, we first define an array $array, which has two 'apple' elements. Then we use the array_diff_assoc() function to find the difference between the deduplicated array and the original array. If the difference is not empty, it means that the same value exists in the array. Note that before using the array_diff_assoc() function, we need to use the array_unique() function to remove duplicate values ​​in the array.

3. Use the array_count_values() function

The array_count_values() function can be used to return the number of occurrences of all values ​​in the array. We can use this function to determine whether the same value exists in the array and calculate the number of repetitions. The following is a code example that uses the array_count_values() function to determine whether the same value exists in the array:

<?php

$array = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;apple&#39;);

$count_values = array_count_values($array);

foreach ($count_values as $value) {
    if ($value > 1) {
        echo '数组中存在相同值,重复次数为' . $value;
        break;
    }
}

?>

In the above code, we first define an array $array, which has two 'apple' elements. Then we use the array_count_values() function to count the number of occurrences of each element in the array, and then use a foreach loop to traverse the array of times. If the number of times of an element is greater than 1, it means that the same value exists in the array, and the number of repetitions is output.

4. Use array_unique() function and array_diff() function

array_unique() function can be used to delete duplicate values ​​​​in an array, and array_diff() function can be used to compare two arrays difference set. We can use these two functions together to determine if the same value exists in an array. The following is a code example that uses the array_unique() function and array_diff() function to determine whether the same value exists in the array:

<?php

$array = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;apple&#39;);

if (count($array) !== count(array_unique($array))) {
    $diff = array_diff($array, array_unique($array));

    echo &#39;数组中存在相同值:&#39; . implode(&#39;,&#39;, $diff);
} else {
    echo &#39;数组中不存在相同值&#39;;
}

?>

In the above code, we first define an array $array, which has two ' apple' element. Then we use the array_unique() function to remove duplicates, and then use the array_diff() function to find the same value. If the number of the same values ​​is not 0, it means that the same value exists in the array and the same value is output. Otherwise output 'The same value does not exist in the array'.

Summary:

The above are several common PHP array value comparison methods. Different methods have slight differences in implementation, but the ideas are generally the same. Just choose the appropriate method according to your needs.

The above is the detailed content of How to check if array values ​​are the same in php. 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