定数

<?php

define("_TEISUNAME", "value", false);
  • 値に名前をつけている。
  • 基本大文字で名前をつける。
  • 定数名は英字・またはアンダースコアから始める。
  • オプションでtrueを指定すると大文字・小文字を区別しない(デフォルトはfalse)。
  • $はいらない。
  • どこからでも実行可能。
  • 配列は定数にできない。
  • 値をスクリプト実行中、変更できない。
  • 定数は再定義できない。

定義済みか否かを調べる関数

<?php

define("_TEISUNAME", "value");

if(defined("_TEISUNAME")){
    echo "defined";
} else {
    echo "undefined";

// defined

定数の値を取得する関数

<?php

define("_TEISUNAME", "value");

echo constant("_TEISUNAME"); // value

定数をすべて出力する関数

<?php

define("_TEISUNAME", "");
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
        (
            [_TEISUNAME] => "value"
        )

)