PHP支持常量的定义,在编写扩展时可能希望定义钱些预定义的常量给用户使用,这时候就要使用创建常量的宏。PHP的常量是全局有效的,如TRUE/FALSE等,创建常量的宏如下:
REGISTER_LONG_CONSTANT(name,vlaue,flags) //创建一个长整型常量,下类似
REGISTER_DOUBLE_CONSTANT(name,value,flags)
REGISTER_STRING_CONSTANT(name,value,flags) //新建一个字符串常量,给定的字符串空间必须在Zend内部内存
REGISTER_STRINGL_CONSTANT(name,value,length,flags) //新建一个指定长度的字符串常量,给定的内存同上
flags参数可设置以下标识:
CONST_CS:设置此标识的常量的大小写敏感的
CONST_PERSISTENT:标识此常量是持久化的,即本次请求完后也不会被释放其他请求还可以使用,
使用二进制的‘或’操作可指定一个变量具有两种标识的特性,
REGISTER_LONG_CONSTANT("MY_NEW_CONSTANT",10,CONST_CS|CONST_PERSISTENT);创建了一个大小写敏感和持久化的长整型常量。