// PHP 7
assert ( mixed $assertion [, Throwable $exception ] ) : bool
// 代码
assert(true == false);
// 运行结果:
Warning: assert(): assert(true == false) failed in E:\work\index.php on line 4
// 设置回调函数
assert_options(ASSERT_CALLBACK, 'myAssert');
// 函数
function myAssert($file, $line, $code, $desc)
{
echo "Assertion Failed: File {$file} Line {$line} Code {$code} Desc {$desc} ";
}
// 执行
assert(true == false, '不可能相等');
// 结果
Assertion Failed: File E:\work\index.php Line 13 Code Desc 不可能相等
//
assert(true == false, new AssertionError('异常信息'));
// 结果
Warning: assert(): AssertionError: 异常信息 in E:\work\index.php:4 Stack trace:
function func($data) {
// 一些逻辑
return true;
}
assert(func(1) === 5, 'func() 测试不通过:');
assert(is_string(func(1)), 'func() 测试不通过:');
// 结果
Warning: assert(): func() 测试不通过: failed in E:\work\index.php on line 10
Warning: assert(): func() 测试不通过: failed in E:\work\index.php on line 11