assert_options

(PHP 4, PHP 5, PHP 7, PHP 8)

assert_options設(shè)置/獲取斷言的各種標(biāo)志

說明

assert_options(int $what, mixed $value = ?): mixed

設(shè)置 assert() 的各種控制選項(xiàng),或者是僅僅查詢當(dāng)前的設(shè)置。

參數(shù)

what

斷言標(biāo)志
標(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';
?>

參見

  • assert() - 檢查一個(gè)斷言是否為 false