(PHP 4, PHP 5, PHP 7, PHP 8)
assert_options — 設(shè)置/獲取斷言的各種標(biāo)志
設(shè)置 assert() 的各種控制選項(xiàng),或者是僅僅查詢當(dāng)前的設(shè)置。
what
標(biāo)志 | INI 設(shè)置 | 默認(rèn)值 | 描述 |
---|---|---|---|
ASSERT_ACTIVE | assert.active | 1 | 啟用 assert() 斷言 |
ASSERT_WARNING | assert.warning | 1 | 為每個(gè)失敗的斷言產(chǎn)生一個(gè) PHP 警告(warning) |
ASSERT_BAIL | assert.bail | 0 | 在斷言失敗時(shí)中止執(zhí)行 |
ASSERT_QUIET_EVAL | assert.quiet_eval | 0 | 在斷言表達(dá)式求值時(shí)禁用 error_reporting |
ASSERT_CALLBACK | assert.callback | (null ) |
斷言失敗時(shí)調(diào)用回調(diào)函數(shù) |
value
標(biāo)志的新值。
返回任意標(biāo)志的原始設(shè)置,出錯(cuò)時(shí)返回 false
。
示例 #1 assert_options() 例子
<?php
// 處理斷言失敗時(shí)的函數(shù)
function assert_failure()
{
echo 'Assert failed';
}
// 我們的測(cè)試函數(shù)
function test_assert($parameter)
{
assert(is_bool($parameter));
}
// 設(shè)置斷言標(biāo)志
assert_options(ASSERT_ACTIVE, true);
assert_options(ASSERT_BAIL, true);
assert_options(ASSERT_WARNING, false);
assert_options(ASSERT_CALLBACK, 'assert_failure');
// 讓一個(gè)斷言會(huì)失敗
test_assert(1);
// 由于 ASSERT_BAIL 是 true,這里永遠(yuǎn)也到不了
echo 'Never reached';
?>