PHP AssertionError
phpserver side programmingprogramming更新于 2025/7/18 12:22:17
简介
AssertionError 类是 Error 类的子类。当 assert() 返回 FALSE 时,抛出此类错误。
assert() 检查给定断言的真假,如果为假,则抛出 AssertionError。assert() 函数定义如下 −
语法
for PHP 5 and PHP 7 assert ( mixed $assertion [, string $description ] ) : bool PHP 7 only assert ( mixed $assertion [, Throwable $exception ] ) : bool
Parameters
| Sr.No | Parameter & Description |
|---|---|
| 1 | assertion string or boolean expression |
| 2 | description failure mssage |
| 3 | exception (for PHP 7 only) throwable object |
自 PHP 7.0 起,assert() 不再是一个函数,而是一个语言结构。assertion 参数现在可以是一个表达式,第二个参数可以是异常或描述。从 PHP 7.2 开始,字符串描述会发出 E_DEPRECATED 消息。只有在 php.ini 文件中启用了 assert.exception=on 时,assert() 抛出的 AssertionError 才会发送到 catch 代码块。
AssertionError 示例
在此示例中,我们断言条件为真,try 代码块正常执行。如果条件为假,则 catch 代码块将显示 AssertionError 消息。
示例
<?php
$a=10;
$b=20;
try {
if (assert($a == $b, "assert($a == $b) failed.")) {
echo("assert($a == $b) was successful.");
}
} catch (AssertionError $e) {
echo $e->getMessage();
}
?>
输出
这将产生以下结果 −
assert(10 == 20) failed.

