<?php
// Esta es nuestra función manejadora
// de los fallos en un aserción
function assert_failure()
{
echo 'Assert failed';
}
// Esta es nuestra función de test
function test_assert($parameter)
{
assert(is_bool($parameter));
}
// Establecemos nuestras propias opciones para gestionar las aserciones
// Activamos las aserciones
assert_options(ASSERT_ACTIVE, true);
// Si una aserción falla se detiene la ejecución
assert_options(ASSERT_BAIL, true);
// Si una aserción falla NO se genera una advertencia
assert_options(ASSERT_WARNING, false);
// Establecemos la función 'assert_failure' como manejadora (callback) de las aserciones
assert_options(ASSERT_CALLBACK, 'assert_failure');
// Creamos una aserción la cual queremos que falle
test_assert(1);
// Este código nunca se ejecuta porque ASSERT_BAIL
// está a TRUE
echo 'Never reached';
?>