O operador ?: no PHP 5.3
PHP 5.3 introduziu o operador ?:, uma forma condensada do operador condicional que estava disponível anteriormente . Originalmente, o operador condicional tinha a forma:
expr ? val_if_true : val_if_false
No PHP 5.3, você pode omitir a parte do meio, levando à sintaxe ?:. Isso é equivalente a:
expr ? expr : val_if_false
Por exemplo, o código a seguir verifica se a variável $c pode ser chamada. Se não for, lança uma exceção:
require __DIR__.'/c.php'; if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; })) throw new Exception('Error'); $c();
Funções anônimas no PHP 5.3
Juntamente com o operador ?:, o PHP 5.3 também introduziu funções anônimas. Ao contrário da questão, as funções anônimas não existem há algum tempo. Eles eram um novo recurso no PHP 5.3. Funções anônimas são criadas sem nome e normalmente são usadas como retornos de chamada ou como argumentos para outras funções.
No exemplo acima, a função anônima é atribuída à variável $c. Não possui parâmetros e imprime "Uau!" quando chamado. Esta função anônima é usada como valor padrão para a variável $c, que verifica se a função pode ser chamada antes de tentar executá-la.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3