2014-01-21 2 views
-4

У меня есть два условия ниже. Мне не нужно проверять второй if, если первый if возвращает true, но если он возвращает false, проверьте второй if. Я не нужен какой-либо из if заявления вернуть истинный так if else не применяетсяЕсли в elseif-заявлении есть else в конце?

if($a > $b){ 
    //do this 
} 

if($a == $c){ 
    //do this 
} 

Так что я ниже. Я пробовал это на localhost, и он работает, но я не уверен, что все в порядке? manual ничего не сказал о завершении else.

if($a > $b){ 
    //do this 
} elseif ($a == $c){ 
    //do this 
} 

Так или нет?

+0

это нормально ......... – Justinas

+1

Почему бы и нет? –

+0

, если вы считаете, что может возникнуть условие, которое может не прийти ни в какое условие 'IF', что определенно вам нужно использовать' elseif'. Это хорошая привычка. –

ответ

1

Лучше иметь как можно меньше if-else условий, особенно. внутри петли. Совершенно нормально не иметь никаких else заявлений в конструкциях if-elseif.

Код будет пропускать блок if-elseif для всех условий, которые не совпадают.

Возможно, вы захотите включить блок else, если вы хотите покрыть все условия, которые вы не покрывали условиями if-elseif. Если нет, все в порядке!

+0

Это довольно смелое заявление без каких-либо оснований. Я бы с удовольствием имел больше операторов 'if-else' всюду, если это означает, что оценивается менее ненужный код. –

+0

@GeorgeReith, IMHO должен быть как можно меньше кода if-else. Если нет другого выбора, мы должны, конечно, использовать их. Я не имел в виду, что мы должны покончить с «if-else». Мы не можем этого сделать. Надеюсь, это прояснит мою мысль. –

+2

Не совсем, я не понимаю, почему использование 'if-else' должно быть уменьшено по сравнению с любым другим утверждением. Вы можете оптимизировать свои заявления, чтобы они были более эффективными. Если что-либо, вы должны уменьшить использование циклов, а не 'if-else' в циклах. Это опасно сказать новичкам, которые теперь могут стрелять в ногу, пытаясь избежать утверждений 'if-else'. –

-1
if($a > $b){ 
    //do this 
$z=true or false; 
if($z||($a == $c)){ 
    //do this 
} 
return $z; 

} 

Dont непосредственно вернуть ваш истинным или ложным просто положить его в одной переменной и проверить состояние с этой переменной внутри первого условия, то вернуть ваш переменная. он будет работать.

Смежные вопросы