(PHP 4, PHP 5, PHP 7, PHP 8)
assert_options — Define/obtém as várias opções de asserção
Esta função tornou-se DEFASADA a partir do PHP 8.3.0. O uso desta função é fortemente desencorajado.
Define as várias opções de controle de assert() ou apenas consulta suas várias configurações.
Nota: O uso de assert_options() é desencorajado em favor de definir e obter as diretivas zend.assertions e assert.exception do php.ini com ini_set() e ini_get(), respectivamente.
option
Opção | Configuração INI | Valor padrão | Descrição |
---|---|---|---|
ASSERT_ACTIVE | assert.active | 1 | habilita avaliação de assert() |
ASSERT_EXCEPTION | assert.exception | 1 | lança uma exceção AssertionError para cada asserção falhada |
ASSERT_WARNING | assert.warning | 1 | emite um alerta PHP para cada asserção falhada |
ASSERT_BAIL | assert.bail | 0 | termina a execução em asserções falhadas |
ASSERT_QUIET_EVAL | assert.quiet_eval | 0 | desabilita registro de erros durante avaliação de expressões de asserção. Removido a partir do PHP 8.0.0. |
ASSERT_CALLBACK | assert.callback | (null ) |
Função de retorno a ser chamada em asserções falhadas |
value
Um novo valor opcional para a opção.
A função de retorno definida via ASSERT_CALLBACK
ou
assert.callback
deve ter a seguinte assinatura:
file
line
assertion
null
.
description
value
redefine a função de retorno da asserção.
Retorna a configuração original de qualquer opção.
Se option
não for uma opção válida, uma exceção
ValueError é lançada.
Versão | Descrição |
---|---|
8.3.0 | assert_option() agora está defasada. |
8.0.0 |
Se option não for uma opção válida,
uma exceção ValueError é lançada.
Anteriormente, false era retornado.
|
Exemplo #1 Exemplo de assert_options()
<?php
// Esta é nossa função para manipular
// falhas de asserção
function assert_failure($file, $line, $assertion, $message)
{
echo "A asserção $assertion em $file na linha $line falhou: $message";
}
// Esta é nossa função de teste
function test_assert($parameter)
{
assert(is_bool($parameter));
}
// Define as opções de asserção
assert_options(ASSERT_ACTIVE, true);
assert_options(ASSERT_BAIL, true);
assert_options(ASSERT_WARNING, false);
assert_options(ASSERT_CALLBACK, 'assert_failure');
// Cria uma asserção que iria falhar
test_assert(1);
// Isto nunca é alcançado devido a ASSERT_BAIL
// definido como verdadeiro
echo 'Nunca alcançado';
?>