get_defined_constants
(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
get_defined_constants — 返回所有常量的關聯陣列,鍵是常量名,值是常量值
說明
get_defined_constants(bool
$categorize
= false
): array返回目前所有已定義的常量名和值。 這包含 define() 函式所建立的,也包含了所有擴充套件所建立的。
參數
-
categorize
-
讓此函式返回一個多維陣列,分類為第一維的鍵名,常量和它們的值位於第二維。
<?php
define("MY_CONSTANT", 1);
print_r(get_defined_constants(true));
?>以上例程的輸出類似於:
Array ( [Core] => Array ( [E_ERROR] => 1 [E_WARNING] => 2 [E_PARSE] => 4 [E_NOTICE] => 8 [E_CORE_ERROR] => 16 [E_CORE_WARNING] => 32 [E_COMPILE_ERROR] => 64 [E_COMPILE_WARNING] => 128 [E_USER_ERROR] => 256 [E_USER_WARNING] => 512 [E_USER_NOTICE] => 1024 [E_ALL] => 2047 [TRUE] => 1 ) [pcre] => Array ( [PREG_PATTERN_ORDER] => 1 [PREG_SET_ORDER] => 2 [PREG_OFFSET_CAPTURE] => 256 [PREG_SPLIT_NO_EMPTY] => 1 [PREG_SPLIT_DELIM_CAPTURE] => 2 [PREG_SPLIT_OFFSET_CAPTURE] => 4 [PREG_GREP_INVERT] => 1 ) [user] => Array ( [MY_CONSTANT] => 1 ) )
返回值
返回的陣列為 常量名 => 常量值,也可以按註冊變數的副檔名稱來分組。
範例
示例 #1 get_defined_constants() 例子
<?php
print_r(get_defined_constants());
?>
以上例程的輸出類似於:
Array ( [E_ERROR] => 1 [E_WARNING] => 2 [E_PARSE] => 4 [E_NOTICE] => 8 [E_CORE_ERROR] => 16 [E_CORE_WARNING] => 32 [E_COMPILE_ERROR] => 64 [E_COMPILE_WARNING] => 128 [E_USER_ERROR] => 256 [E_USER_WARNING] => 512 [E_USER_NOTICE] => 1024 [E_ALL] => 2047 [TRUE] => 1 )
參見
- defined() - 檢查某個名稱的常量是否存在
- constant() - 返回一個常量的值
- get_loaded_extensions() - 返回所有編譯並載入模組名的 array
- get_defined_functions() - 返回所有已定義函式的陣列
- get_defined_vars() - 返回由所有已定義變數所組成的陣列