A Instrução IF ELSE: Controle de Fluxo
Aprendemos a usar o comando IF, que realiza um teste condicional e só executa um bloco de código se tal expressão for TRUE.Mas, e quando ela for FALSE? Nada ocorre?
É aí que entra o comando ELSE.
A declaração desse par de comandos é:
<?php if(expressao){ [codigo] [codigo] }else{ [codigo] [codigo] } ?>Ou seja, se a expressão for VERDADEIRA, o bloco do IF é executado.
Se a expressão for FALSA, o bloco do ELSE é executado.
Pense em inglês.
IF em inglês é SE, ELSE significa SENÃO.
A instrução IF ELSE fica assim:
se (expressao){
código;
}senão {
código;
}
Se for verdade, faz uma coisa, senão for, faz outra.
Nossos scripts estão começando a ter um fluxo mais complexo e completo, se assemelhando a sistemas web reais.
Exemplo de uso do IF e ELSE
Crie um site que pede ao usuário sua idade. Se for de maior, diga que pode dirigir, senão diga que não pode ainda.<html> <head> <title>Curso PHP Progressivo</title> </head> <body> <form action="home.php" method="get"> Sua idade: <input type="number" name="age" /><br /> <input type="submit" name="submit" value="Testar" /> </form> <?php $idade = $_GET['age']; if($idade >= 18){ echo "Você já pode dirigir!"; }else{ echo "Você ainda não pode dirigir!"; } ?> </body> </html>A novidade aí ficou por conta do ELSE, que executa sempre que o teste for FALSE.
Exemplo de IF e ELSE em PHP
Crie uma página que pergunta a idade do usuário. Se ele tiver 65 anos ou mais, avise que ele já pode se aposentar. Senão, avise que ele tem que esperar até os 65.<html> <head> <title>Curso PHP Progressivo</title> </head> <body> <form action="home.php" method="get"> Sua idade: <input type="number" name="age" /><br /> <input type="submit" name="submit" value="Testar" /> </form> <?php $idade = $_GET['age']; if($idade < 65){ echo "Você ainda não pode se aposentar"; }else{ echo "Você já pode se aposentar!"; } ?> </body> </html>Como mostrado nos exemplos do tutorial anterior, é possível usar somente o comando IF, sem um ELSE. Porém, só podemos usar o ELSE com seu respectivo IF.
Exemplo de IF ELSE com strings
Crie um sistema web que pede a senha do usuário. Se ele digitar a correta, avise que está entrando no sistema. Se errar, diga que digitou errado. A senha deve ser 'phpprogressivo'.<html> <head> <title>Curso PHP Progressivo</title> </head> <body> <form action=home.php method="get"> Senha: <input type="password" name="passwd" /><br /> <input type="submit" name="submit" value="Entrar" /> </form> <?php $senha = $_GET['passwd']; if($senha == 'phpprogressivo') echo "Entrando no sistema..."; else echo "Senha errada!"; ?> </body> </html>Sempre que o código após o IF e/ou ELSE tiver apenas uma linha de comando, podemos suprimir o par de chaves { }.