INI 文件处理改变
PHP 5.3.0 显著改进了 INI 文件的性能和解析, 并且新增了若干语法功能.
- 标准的 php.ini 文件被重新组织和命名. php.ini-development 包含在开发环境中推荐使用的设置. php.ini-production 包含在生产环境中推荐使用的设置.
- 支持两个特殊章节: [PATH=/opt/httpd/www.example.com/] 和 [HOST=www.example.com]. 这两个章节里的指令不能被用户定义的 INI 文件或者运行时覆盖. 关于这些章节的更多信息, 可以这里找到.
- 移除了 zend_extension_debug and zend_extension_ts. 使用 zend_extension 指令来加载全部 Zend 扩展.
- 移除了 zend.ze1_compatibility_mode. 如果该 INI 指令被设置为 On, 启动时将抛出
E_ERROR
级别错误. - 在 "extension" 指令中可以使用全路径来加载模块.
- "ini变量" 现在几乎在 php.ini 文件的任何地方都可以使用.
- 可以在运行时收紧 open_basedir 限制条件.
- 可以在 INI 选项数组中使用字母数字或者变量.
- get_cfg_var() 现在可以返回 "数组(array)" INI 选项.
- 添加了一个新指令 mail.add_x_header.
- user_ini.filename 是新增的.
- user_ini.cache_ttl 也是新增的.
- exit_on_timeout 也是新增的.
- open_basedir 现在是 PHP_INI_ALL 的.
新增以下指令:
- 新的 .htaccess-style 用户 INI 文件机制中的 user_ini.filename 和 user_ini.cache_ttl.
- 新增 mbstring.http_output_conv_mimetype. 该指令指定了 mb_output_handler() 激活内容类型的正则表达式.
- 新增 request_order. 允许控制哪些外部变量在 $_REQUEST 中可用.
以下 ini 指令默认值更新:
- session.use_only_cookies 默认被设置为 "1"(打开).
- oci8.default_prefetch 变更为从 "10" 到 "100".