检查数组php是否相等

时间:2013-10-13 22:53:08

标签: php arrays

我有一个问题,我有一个数组生成的dinamically和一个随机值,数组长度可能是变量,并不总是相同,我的问题是,我必须检查数组值,看看是否有例如:

是相同的值
$arr = [1,1,1,4]; //check how many values are the same [PHP CODE]

我之前尝试使用in_array(),但我没有明确的方法来做到这一点。

if (in_array($result, $arr)) {
   echo "in array";
}

3 个答案:

答案 0 :(得分:2)

您可以使用print_r(array_count_values($arr))查看每个号码在数组中出现的次数。

答案 1 :(得分:1)

array_count_values

是你要找的!

<?php
$array = array(1, "hello", 1, "world", "hello");
print_r(array_count_values($array));
?>

//prints
Array
(
    [1] => 2
    [hello] => 2
    [world] => 1
)

http://php.net/manual/en/function.array-count-values.php

答案 2 :(得分:1)

试试这个:

<?php
        $array = array(1, "hello", 1, "world", "hello");
        $arr_count = array_count_values($array);

        $count = 0;
        $val_arr = array();
        foreach($arr_count as $key => $val)
        {
            if($val > 1)
            {
                $count++;
                $val_arr[] = $key;
            }
        }

        if($count == 0)
        {
            echo 'Array has no common values.';
        }
        else {
            echo 'Array has '.$count.' common values:';

            foreach($val_arr as $val)
            {
                echo "<b>".$val."</b> ";
            }
        }        
        ?>

使用您的数组代替$ array变量。