if($price > 100)
{
//too high
tooHigh()
}
elseif($price > 70) //it wasn't greater than 100 - is it greater than 70?
{
//negotiate
negotiate()
}
elseif($price > 20) //OK, wasn't greater than 70 OR 100 - greater than 20 then?
{
//accept
accept()
}
else //Guess not - just don't do anything
{
//thank and escape
thankAndEscape()
}
Кейс-заявления, к сожалению, не могут выполнять условия. Они действительно «если это так, то ...» в жестокой честности
Это должно работать, так как условия будут просто переходить к следующему, пока не достигнут дна. если один соответствует - остальная часть утверждения игнорируется ... То есть, если у меня правильная логика вверх ...
Не думаю, что вам нужно выполнять сопоставление диапазонов, поскольку оно уже является родным для оператора if. Например. Утверждение «между 70 и 20» упрощается до более 20 ниже 70 в отдельных условиях. Немного эффективнее и проще для чтения.