PHP: Atribuição condicional (ternário)

Palavras-chave: PHP5, IF, atribuição condicional, ternário

Um dos comandos mais utilizados nos nossos programas sem dúvida é o IF. Quando utilizamos o IF para tarefas simples como realizar um teste condicional para posterior atribuição de variáveis, podemos utilizar uma sintaxe simplificada.

A seguir, veja um exemplo onde atribuímos a variável $texto dependendo do conteúdo da variável $idade.

<?php
$idade =16;

if ($idade > 18)
{
   $texto = "maior idade";
}
else
{
   $texto = "menor idade";
}

echo $texto;
?>

O PHP nos oferece uma sintaxe onde podemos realizar uma atribuição condicional de variáveis, onde o IF acima pode ser substituído pela seguinte forma:

<?php
$idade =16;
$texto = $idade > 18 ? "maior idade" : "menor idade";
echo $texto;
?>
This entry was posted in PHP. Bookmark the permalink.

14 Responses to PHP: Atribuição condicional (ternário)

  1. Diego says:

    Essa atribuição condicional possui um nome específico, e chama-se “ternário”. Acho que vale a colocação do nome no artigo, até para efeito de consulta em outros meios. E é uma syntaxe presente na maioria das linguagens.

  2. Feito, valeu Diego!

  3. Muneo says:

    Usa-se isso pra dificultar entendimento de newba… kkk!
    Uma linha assim e a falta de documentação no código pode ser mortal prum programador de primeira viagem!

  4. Ainda mais pelo fato de ele suportar encapsulamento (ternário dentro de ternário).

    Lembro-me que quando ainda era um programadorzinho, me deparei com um desses… Há pouco tempo fui entender e descobri que é tão simples hehe

  5. Felipe says:

    O Eclipse tem um sistema interessante:

    Quando vc passa o mouse em cima de um ternário ele exibe o código “normal” com o if.

    O Eclipse tem é coisa viu!!

  6. Paulo Miguel says:

    Cara muito obrigado, acabei de vir do Java e o ternário é igualzinho… quebrou mó galhão

    Valeu, òtimo Post

  7. Mauro says:

    Adorei a dica, é um saco e pouco prático ficar montando a estrutura de IF’s. Outras dicas do tipo serão muito bem vindas.

    Obrigado.

  8. Poxa valeu amigo

  9. Tiago de Souza says:

    Cara, valeu mesmo.
    Já estava indo postar no iMasters um tópico perguntando o que era essa “espécie de condicional”. Isso vai economizar algumas linhas de código, obrigado mesmo :D

  10. Adriano says:

    Eu entro umas 20 vezes por dia aqui para pegar esse cara. kkkkk
    ainda decoro !

  11. Rodrigo says:

    Material meio pobre, falta de conteudo

    • Bill Gates says:

      Precisa de mais o que pra entender? Quer que o cara desenhe pra você também? Pegue na sua mãozinha e vai arrastando o mouse e depois digitando junto?

      Fecha essa IDE de programação que estiver usando e vai entregar currículo no McDonalds então, frango!

      Ass: Bill

  12. Roque says:

    Essa função ta errada, segundo ela só pessoas com 19 anos ou mais são maiores de idade. O correto seria >= 18 que também pegaria pessoas com 18 anos.

Comments are closed.