我想比较10个值,当它们不相等时,他会做一些事情......
if ($a!=$b!=$c!=$d!=$e!=$f!=$g!=$h!=$i!=$j)
{
// do some stuff
}
它没有用......所以我想,我可能无法将多个值相互比较.. 所以我试过了:
if ($a!=$b&&$a!=$c&&$a!=$d&&$a!=$e&&$a!=$f&&$a!=$g&&$a!=$h&&$a!=$i&&$a!=$j&&
$b!=$c&&$b!=$d&&$b!=$e&&$b!=$f&&$b!=$g&&$b!=$h&&$b!=$i&&$b!=$j&&
$c!=$d&&$c!=$e&&$c!=$f&&$c!=$g&&$c!=$h&&$c!=$i&&$c!=$j&&
$d!=$e&&$d!=$f&&$d!=$g&&$d!=$h&&$d!=$i&&$d!=$j&&
$e!=$f&&$e!=$g&&$e!=$h&&$e!=$i&&$e!=$j&&
$f!=$g&&$f!=$h&&$f!=$i&&$f!=$j&&
$g!=$h&&$g!=$i&&$g!=$j&&
$h!=$i&&$h!=$j&&
$i!=$j)
{
// do some stuff
}
但他仍然没有做任何事...... 我100%确定案件发生了他们都不相等^^
答案 0 :(得分:2)
发现阵列:
php 5.4 +
if([$a, $b, $c, $e, $f, $g, $h, $i, $j] === array_unique([$a, $b, $c, $e, $f, $g, $h, $i, $j]))
{
//do stuff
}
php< 5.4
if(array($a, $b, $c, $e, $f, $g, $h, $i, $j) === array_unique(array($a, $b, $c, $e, $f, $g, $h, $i, $j)))
{
//do stuff
}
答案 1 :(得分:2)
将您的值放入数组中,然后使用以下条件:
if (count(array_unique($arr)) != 1) {
// at least one value is different
}
如果所有值必须不同,您可以使用:
if (count(array_unique($arr)) === count($arr)) {
// all values are different
}