define 名前を指定して定数を定義する &reftitle.description; booldefine stringconstant_name mixedvalue boolcase_insensitive&false; 実行時に、名前を指定して定数を定義します。 &reftitle.parameters; constant_name 定数の名前。 予約語や無効な名前を使っていても、定数を define できてしまいます。これらの値を取得するには、 constant 関数を使うこと(だけ)しかできません。 しかしながら、こういったことをするのは推奨されません。 value 定数の値。PHP 5 では、value は スカラー値 (intfloatstringbool あるいは &null;) でなければいけません。PHP 7 では配列を使うこともできます。 リソース型の定数を定義することもできますが、 推奨できません。予期せぬ振る舞いをする可能性があります。 case_insensitive &true; を指定すると、定数は大文字小文字を区別しないようになります。 デフォルトでは大文字小文字を区別します。つまり CONSTANTConstant は別の値を表すわけです。 大文字小文字を区別しない定数を定義するのは、 PHP 7.3.0 以降では推奨されなくなりました。 PHP 8.0.0 以降では、&false; のみを受け入れます。 &true; を渡すと、警告が発生します。 大文字小文字を区別しないときは、定数は小文字で格納されます。 &reftitle.returnvalues; &return.success; &reftitle.changelog; &Version; &Description; 8.0.0 case_insensitive に &true; を渡すと、 E_WARNING が発生するようになりました。 &false; を渡すことはまだ許可されています。 7.3.0 case_insensitive は非推奨になりました。 8.0.0 で削除される予定です。 7.0.0 array が使えるようになりました。 &reftitle.examples; 定数の定義 ]]> 予約された名前を定数にする マジック定数 と同じ名前の定数を定義できる 可能性 を示します。 しかしながら、結果として起きる振る舞いは明らかに混乱を招くため、 こんなことを実際にすることは推奨されません。 ]]> &example.outputs; &reftitle.seealso; defined constant 定数の節