比较多个值

时间:2012-08-13 07:41:57

标签: php

我有大约20个不同的变量,我想将这些变量相互比较,以检查天气是否相等。

示例

$var1 = 1;
$var2 = 2;
$var3 = 1;
$var4 = 8;
.
.
.
$var10 = 2;

现在我要检查......

if($var1 == $var2 || $var1 == $var3 || $var1 == $var4 || ......... || $var2 == $var3 || $var2 == $var4 || ............. || $var8 = $var9 || $var8 == $var10 ||...)
{
    echo 'At-least two variables have same value';
}

我发现这很容易做到。有什么建议吗?

3 个答案:

答案 0 :(得分:10)

$arr = array($var1, $var2, ... , $var10);

if (count($arr) !== count(array_unique($arr))) {
  echo 'At-least two variables have same value';
}

答案 1 :(得分:7)

如果您想知道任何变量是否重复,请将它们放入数组并使用array_count_values

  

array_count_values()使用输入数组的值作为键返回数组,输入的频率为值。

如果结果中有任何大于1的值,则匹配。

E.g。

$values = array(1,2,3,1);
if(max(array_count_values($values)) > 1) {
   ...

答案 2 :(得分:0)

首先,将它们保存到数组中,一切都变得简单

$list=array("1"=>$var1,"2"=>$var2,......,"10"=>$var10);
$list2=array_unique($list);
if(count($list2) != count($list))
    echo 'At-least two variables have same value';