<?
// Активируем утверждение и переводим в тихий режим
assert_options(ASSERT_ACTIVE, 1);
assert_options(ASSERT_WARNING, 0);
assert_options(ASSERT_QUIET_EVAL, 1);
// Создаем обработчик
function my_assert_handler($file, $line, $code, $desc = null)
{
echo "Проверка завершилась неудачей в $file:$line: $code";
if ($desc) {
echo ": $desc";
}
echo "\n";
}
// Задаем callback-функцию
assert_options(ASSERT_CALLBACK, 'my_assert_handler');
// Спровоцируем ошибку для проверки
assert('2 < 1');
assert('2 < 1', 'Два меньше одного');
Output for 8.0.13
Fatal error: Uncaught Error: Undefined constant "ASSERT_QUIET_EVAL" in /in/c8YaI:5
Stack trace:
#0 {main}
thrown in /in/c8YaI on line 5
Process exited with code 255.
Output for 7.2.0 - 7.2.13, 7.3.0 - 7.3.1, 7.4.33
Deprecated: assert(): Calling assert() with a string argument is deprecated in /in/c8YaI on line 21
Проверка завершилась неудачей в /in/c8YaI:21: 2 < 1
Deprecated: assert(): Calling assert() with a string argument is deprecated in /in/c8YaI on line 22
Проверка завершилась неудачей в /in/c8YaI:22: 2 < 1: Два меньше одного