assert

Проверка истинности значения.
Синтаксис:

int assert(string|bool assertion);

В качестве аргумента функции может быть указано значение или строка, содержащая код PHP
(как в функции eval()). Функция проверяет, является ли значение (или выражение) равным false, и, если это так, выполняет определенные действия.
Поведение функции определяется установками в файле конфигурации или при вызове функции assert_options().

Обычно эта функция используется исключительно в целях отладки, для проверки тех значений, которые всегда должны быть истинны (например: подключение модуля, свободное пространство на диске и т.д.).

В целом же выполнение сценария не должно зависеть от таких проверок, а использовать обычные проверки возвращаемых функциями значений.

<?phpfunction handler() {
echo "n* Failed * n";
}

assert("$a='1';");
echo "a: $a n";
assert(0);
// завершать сценарийecho assert_options(ASSERT_BAIL, 1);
// вызвать обработчикassert_options(ASSERT_CALLBACK, "handler");
// не выдавать сообщений PHP
@assert(--$a);
// эта строка не будет выполненаecho "n ... n";
?>

Приведенный пример выведет:

a: 1
Warning: Assertion failed in file.php on line 20
0
* Failed *