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.NoParameter & Description
1assertion
string or boolean expression
2description
failure mssage
3exception (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.

相关文章