Por que este código não faz com que pule o numero 13 ao ser executado?
<?php
for ($i=0; $i < 16 ; $i++) {
$i==13 ? 'break':'continue';
echo "$i\n";
}
Por que este código não faz com que pule o numero 13 ao ser executado?
<?php
for ($i=0; $i < 16 ; $i++) {
$i==13 ? 'break':'continue';
echo "$i\n";
}
Vamos avaliar o que essa sua linha faz, Marcos:
$i==13 ? 'break':'continue';
Supondo que o valor de $i
seja 13, o primeiro argumento do operador ternário será retornado dessa expressão.
Com isso, você tem essa expressão toda sendo avaliada como a string 'break'
. Essa string não está sendo armazenada em lugar nenhum e simplesmente é ignorada pelo interpretador.
Se você quer EXECUTAR alguma instrução, e não apenas retornar um valor, o operador ternário não é a solução. :-)