PHP. Руководство по PHP. 2005
Creating Constants Пред.
Глава 53. Creating Variables
Creating Constants
Zend supports the creation of true constants (as opposed to
regular variables). Constants are accessed without the typical
dollar sign ($) prefix and are available in all
scopes. Examples include TRUE and
FALSE, to name just two.
To create your own constants, you can use the macros in
All the macros create a constant with the specified name and value.
You can also specify flags for each constant:
CONST_CS - This constant's name is to be
treated as case sensitive.
CONST_PERSISTENT - This constant is
persistent and won't be "forgotten" when the current process
carrying this constant shuts down.
To use the flags, combine them using a inary OR:
// register a new constant of type "long" |
macros - REGISTER_*_CONSTANT
andREGISTER_MAIN_*_CONSTANT. The first type
creates constants bound to the current module. These constants are
dumped from the symbol table as soon as the module that registered
the constant is unloaded from memory. The second type creates
constants that remain in the symbol table independently of the
module.
Таблица 53-6. Macros for Creating Constants
Macro | Description |
REGISTER_LONG_CONSTANT(name, value, flags) REGISTER_MAIN_LONG_CONSTANT(name, value, flags) | Registers a new constant of type long. |
REGISTER_DOUBLE_CONSTANT(name, value, flags) REGISTER_MAIN_DOUBLE_CONSTANT(name, value, flags) | Registers a new constant of type double. |
REGISTER_STRING_CONSTANT(name, value, flags) REGISTER_MAIN_STRING_CONSTANT(name, value, flags) | Registers a new constant of type string. The specified
string must reside in Zend's internal memory. |
REGISTER_STRINGL_CONSTANT(name, value, length, flags) REGISTER_MAIN_STRINGL_CONSTANT(name, value, length, flags) | Registers a new constant of type string. The string length
is explicitly set to length. The specified string must reside in Zend's internal memory. |