PHP simplifica uma operação ternária
-
27-09-2019 - |
Pergunta
No PHP, existe uma maneira de simplificar ainda mais isso, sem usar um if()
?
$foo = $bar!==0 ? $foo : '';
Eu queria saber se havia uma maneira de não reatribuir $foo
para si mesmo se a condição for satisfeita. Entendo que existe uma maneira de fazer isso no JavaScript (usando &&, certo?), Mas estava se perguntando se havia uma maneira de fazer isso no PHP.
Solução
Sim, você pode usar o lógico e (&&
) Operador no PHP também.
$bar === 0 && $foo = '';
Outras dicas
No Php 5.3, a forma curta do operador ternário finalmente chegou, para que você possa fazer o seguinte.
$foo = $bar ?: '';
Ver os operadores de comparação Seção - "Como o Php 5.3, é possível deixar de fora a parte do meio do operador ternário. Expressão expr1?: Expr3 retorna expr1 se o expr1 avaliar para true e expr3 de outra forma".
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow