define Defines a named constant &reftitle.description; booldefine stringconstant_name mixedvalue boolcase_insensitive&false; Defines a named constant at runtime. &reftitle.parameters; constant_name The name of the constant. It is possible to define constants with reserved or even invalid names, whose value can (only) be retrieved with constant. However, doing so is not recommended. value The value of the constant. In PHP 5, value must be a scalar value (int, float, string, bool, or &null;). In PHP 7, array values are also accepted. While it is possible to define resource constants, it is not recommended and may cause unpredictable behavior. case_insensitive If set to &true;, the constant will be defined case-insensitive. The default behavior is case-sensitive; i.e. CONSTANT and Constant represent different values. Defining case-insensitive constants is deprecated as of PHP 7.3.0. As of PHP 8.0.0, only false is an acceptable value, passing true will produce a warning. Case-insensitive constants are stored as lower-case. &reftitle.returnvalues; &return.success; &reftitle.changelog; &Version; &Description; 8.0.0 Passing &true; to case_insensitive now emits an E_WARNING. Passing &false; is still allowed. 7.3.0 case_insensitive has been deprecated and will be removed in version 8.0.0. 7.0.0 array values are allowed. &reftitle.examples; Defining Constants ]]> Constants with Reserved Names This example illustrates the possibility to define a constant with the same name as a magic constant. Since the resulting behavior is obviously confusing, it is not recommended to do this in practise, though. ]]> &example.outputs; &reftitle.seealso; defined constant The section on Constants