【PHP】定数の定義の第三引数を指定して大文字小文字どちらでも利用できるように定義する




この記事は最終更新日から2年以上経過しています。

PHPで定数定義をするときはdefine関数で定義します。
今まで使っていなかったのですが、第三引数にtrueを設定することで大文字・小文字を気にせず利用できることを知りました。
デフォルトはfalseで指定しなければ第一引数で定義した文字列を大文字・小文字まで正確に記述する必要があります。

define('DEFINE_STR', 'デファイン値', true);
// DEFINE_STRでもdefine_strでもDefine_Strでも「何でもデファイン値」を取得できる。

定義済みの定数だとTRUE、FALSE、NULLなんかが大文字でも小文字でも利用できますね。
その他いくつか試してみたのですが、PHP_EOL、E_ERROR、PHP_VERSIONなどは大文字でないとNoticeエラーになりました。
多くの定数は大文字のみでTRUE、FALSE、NULLのようにどちらでも利用できる方が特殊なのかもしれませんね。