Expressões Condicionais
Referência prática sobre Expressões Condicionais
As instruções condicionais alteram o fluxo de controle de seu programa.
Elas dizem para seu código ir para a “direita” ou para a “esquerda”
A instrução condicional mais comum é o if
.
if (expressão-condicional) {
... executar codigo
... executar codigo
... executar codigo
}
Logo após a palavra if
temos a expressão condicional entre parênteses if (expressão-condicional) {
O bloco if só será executado se a expressão for verdadeira ou, em outras palavras, retornar true
.
Condicionais aninhados
Quando temos um if dentro do outro.
if ($a) {
if ($b) {
if ($c) {
... codigo
}
}
}
O código abaixo é equivalente:
if ($a && $b && $c) {
... codigo
}
Simplificando a expressão - TRUE
Os códigos abaixo são equivalentes
<?php
// true completo
if ($variavel == true) {
... executar codigo
}
<?php
// true simplificado
if ($variavel) {
... executar codigo
}
Simplificando a expressão - FALSE
Da mesma forma, os código abaixo também são equivalentes
<?php
// false completo
if ($variavel == false) {
... executar codigo
}
<?php
// false simplificado
if ( !$variavel ) {
... executar codigo
}
Há programadores que detestam a versão simplificada, eu gosto!
É só uma questão de estilo.
else if
O bloco else não precisa ser executado sempre que a expressão no bloco if for false.
O bloco else poderá conter um expressão também.
No exemplo abaixo, se o if for falso e o else verdadeiro então o bloco else será executado
<?php
if (expressao-condicional) {
... executar codigo
... executar codigo
... executar codigo
} else if (expressao-condicional) {
... executar codigo
... executar codigo
... executar codigo
}
Abaixo vemos o código equivalente:
<?php
if (expressao-condicional) {
... executar codigo
... executar codigo
... executar codigo
} else {
if (expressao-condicional) {
... executar codigo
... executar codigo
... executar codigo
}
}
if - else if - else
Uma outra variação seria incluir um terceiro bloco else.
<?php
if (expressao-condicional) {
... executar codigo
... executar codigo
... executar codigo
} else if (expressao-condicional) {
... executar codigo
... executar codigo
... executar codigo
} else
... executar codigo
... executar codigo
... executar codigo
}
Neste caso, o bloco else
apenas seria executado se o bloco if
e bloco else if
fossem false
.