Я немного покопался, но не могу найти простой ответ, почему вы не можете написать что-то вроде
<?php
$x=2;
if(1<$x<3) {
echo "Win!";
} else {
echo "Lose!";
}
?>
Моя интуиция говорит, что поскольку PHP читает влево-вправо, он оценивает первую половину оператора (1<$x
) и затем просто видит <3, что не имеет смысла. Я просто хотел бы, чтобы кто-то подтвердил (или опроверг), что это так, и что каждый раз, когда вы предоставляете условия в PHP, вы должны выделять каждое из них. Я не знаю, будет ли это называться логикой, синтаксисом или чем-то еще, но вы можете написать выражения, подобные этим, в других контекстах (например, SAS) и оценить их, поэтому я просто хотел бы понять, почему вы не можете в PHP. Спасибо! </p>