У меня есть переменная, которую мне нужно проверить с другими переменными, чтобы убедиться, что она больше, чем они. Я упростил приведенный ниже пример, но вот рабочий пример желаемого результата.
<?php
$a = 5;
$b = 4;
$c = 3;
$d = 2;
$e = 1;
if(($a > $b) && ($a > $c) && ($a > $d) && ($a > $e)){
echo "A is the biggest";
}else{
echo "A is not the biggest";
}
?>
У меня вопрос: есть ли более простой способ написать оператор if, чтобы нам не приходилось $a
написано четыре раза? Что-то вроде …
if($a > $b,$c,$d,$e){
я видел Более простой способ проверить, не равна ли переменная нескольким строковым значениям?
но это для проверки наличия строк.
Я бы написал что-то вроде этого:
if (max($a, $b, $c, $d, $e) == $a) {
....
}
Так же, как вы можете иметь массив строк, вы можете иметь массив переменных.
«Самый упрощенный» подход — вернуть max()
переменных массива, а затем просто проверьте, $a
больше, чем это. Таким образом, вам нужно сделать только одно сравнение.
if (($a > $b) && ($a > $c) && ($a > $d) && ($a > $e)) { }
Может быть переписан как:
$values = array($b, $c, $d, $e); // array(4, 3, 2, 1);
if ($a > max($values)) { } // if (5 > 4) { }
Надеюсь это поможет!