設定/獲取斷言的各種標誌

assert_options

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

assert_options設定/獲取斷言的各種標誌

說明

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

設定 assert() 的各種控制選項,或者是僅僅查詢目前的設定。

參數

what

斷言標誌
標誌INI 設定預設值描述
ASSERT_ACTIVEassert.active1啟用 assert() 斷言
ASSERT_WARNINGassert.warning1為每個失敗的斷言產生一個 PHP 警告(warning)
ASSERT_BAILassert.bail0在斷言失敗時中止執行
ASSERT_QUIET_EVALassert.quiet_eval0 在斷言表達式求值時禁用 error_reporting
ASSERT_CALLBACKassert.callback(null)斷言失敗時呼叫回撥函式

value

標誌的新值。

返回值

返回任意標誌的原始設定,出錯時返回 false

範例

示例 #1 assert_options() 例子

<?php
// 處理斷言失敗時的函式
function assert_failure()
{
    echo 
'Assert failed';
}

// 我們的測試函式
function test_assert($parameter)
{
    
assert(is_bool($parameter));
}

// 設定斷言標誌
assert_options(ASSERT_ACTIVE,   true);
assert_options(ASSERT_BAIL,     true);
assert_options(ASSERT_WARNING,  false);
assert_options(ASSERT_CALLBACK'assert_failure');

// 讓一個斷言會失敗
test_assert(1);

// 由於 ASSERT_BAIL 是 true,這裡永遠也到不了
echo 'Never reached';
?>

參見

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

Leave a Reply

Your email address will not be published. Required fields are marked *