Existe uma maneira de tratar condições em programação (PHP, Java, C++, …), para além das habituais estruturas “if, then, else” e “switch, case”. Chama-se Operador Ternário.
Na verdade o Operador Ternário não passa de um simples “if”. A sua função consiste em agrupar, na mesma linha, a condição, os comandos para true (verdadeiro) e os comandos para false (falso).
Vamos a um exemplo:
<?php $nota = 10; // estrutura de controlo 'if' if($nota >= 10) { echo 'Aluno passou!'; } else { echo 'Aluno reprovou!'; } // operador ternário echo ($nota >= 10 ? 'Aluno passou!' : 'Aluno reprovou!'); ?>
A sintaxe do operador ternário é a seguinte:
<condição> ? <instruções para verdadeiro> : <instruções para falso>;
Esta sintaxe aplica-se não só ao PHP, bem como a quase todas as outras linguagens de programação (c++, c#, java, action script, javascript, etc..).
Este operador torna-se recomendado a usar em condições simples, onde temos poucas instruções.
Segue um exemplo exemplo do Operador Ternário:
<?php $nota = 10; function alunoAprovado($nota) { global $nota_minima; $nota_minima = !isset($nota_minima) ? 10 : $nota_minima; return $nota >= $nota_minima ? true : false; } echo alunoAprovado($nota) ? 'Aluno passou!' : 'Aluno reprovou!'; ?>
O exemplo acima, mostra que também é possível utilizar o operador para retornar valores, mas também atribuições, e muito mais. É só dar largas à imaginação.