一、扩展ini配置参数
本段参考:
https://blog.csdn.net/barfoo/article/details/1550913
https://blog.csdn.net/chichou0337/article/details/100721024
1 ini参数定义
扩展可以支持在 php.ini中提供一些参数,来控制扩展的行为,那么这些参数是在扩展中是怎么定义的呢?
所有的配置项参数都必须在PHP_INI_BEGIN() 和 PHP_INI_END()之间,每个配置项则通过 PHP_INI_ENTRY 宏来定义,示例如下
PHP_INI_BEGIN()
STD_PHP_INI_ENTRY("myecho.number", "100", PHP_INI_ALL, OnUpdateLong, global_number, zend_myecho_globals, myecho_globals)
STD_PHP_INI_ENTRY("myecho.string", "ab", PHP_INI_ALL, OnUpdateString, global_string, zend_myecho_globals, myecho_globals)
STD_PHP_INI_ENTRY("myecho.boolean", "0", PHP_INI_ALL, OnUpdateBool, boolean, zend_myecho_globals, myecho_globals)
PHP_INI_END()
上述的例子宏展开后的结果如下:
static zend_ini_entry ini_entries[] = {
// BEGIN 的定义
{
0, PHP_INI_ALL, "foo_bar.global_value", sizeof("foo_bar.global_value"), NULL, NULL, NULL, null, "42", sizeof<