Это, пожалуй, самый простой вопрос, который вы можете найти в stackoverflow, но я бы хотел избавиться от этой путаницы из моей головы раз и навсегда.Рассмотрим следующий оператор if:
if(x > 0)
{
echo 'Inside if';
}
// apparently there is a hidden else here....
echo 'This comes after if';
А теперь рассмотрим следующий:
if(x > 0)
{
echo 'Inside if';
}
else
{
echo 'Inside else';
}
echo 'This comes after if/else';
В первом примере, если условие оценивается как true, будет напечатано «Inside if», но не будет ли напечатано и то, что будет после if («Это после if»)?Я имею в виду, у меня нет возврата внутри моего if, поэтому код должен продолжаться нормально, верно?То же самое относится ко второму оператору if, все, что придет после оператора, будет напечатано, потому что выполнение кода будет продолжаться нормально.Действительно ли после оператора if есть еще виртуальный объект, если мы не определяем его явно?Я имею в виду, что если то, что следует после моего оператора if, напечатано независимо от того, оценивается ли условие как истинное или нет, то после моего if на самом деле нет другого виртуального.Кроме того, когда Else абсолютно необходимо в выражении if-then-else вместо того, чтобы просто полагаться на «виртуальное другое», как в первом примере?Пожалуйста, пролите немного света на это.
Спасибо