PHP 5.3.x 中弃用的功能
PHP 5.3.0 新增了两个错误等级: E_DEPRECATED
和 E_USER_DEPRECATED
. 错误等级 E_DEPRECATED
被用来说明一个函数或者功能已经被弃用. E_USER_DEPRECATED
等级目的在于表明用户代码中的弃用功能, 类似于 E_USER_ERROR
和 E_USER_WARNING
等级.
下面是被弃用的 INI 指令列表. 使用下面任何指令都将导致 E_DEPRECATED
错误.
- define_syslog_variables
- register_globals
- register_long_arrays
- safe_mode
- magic_quotes_gpc
- magic_quotes_runtime
- magic_quotes_sybase
- 弃用 INI 文件中以 '#' 开头的注释.
弃用函数:
- call_user_method() (使用 call_user_func() 替代)
- call_user_method_array() (使用 call_user_func_array() 替代)
- define_syslog_variables()
- dl()
- ereg() (使用 preg_match() 替代)
- ereg_replace() (使用 preg_replace() 替代)
- eregi() (使用 preg_match() 配合 'i' 修正符替代)
- eregi_replace() (使用 preg_replace() 配合 'i' 修正符替代)
- set_magic_quotes_runtime() 以及它的别名函数 magic_quotes_runtime()
- session_register() (使用 $_SESSION 超全部变量替代)
- session_unregister() (使用 $_SESSION 超全部变量替代)
- session_is_registered() (使用 $_SESSION 超全部变量替代)
- set_socket_blocking() (使用 stream_set_blocking() 替代)
- split() (使用 preg_split() 替代)
- spliti() (使用 preg_split() 配合 'i' 修正符替代)
- sql_regcase()
- mysql_db_query() (使用 mysql_select_db() 和 mysql_query() 替代)
- mysql_escape_string() (使用 mysql_real_escape_string() 替代)
- 废弃以字符串传递区域设置名称. 使用 LC_* 系列常量替代.
- mktime() 的
is_dst
参数. 使用新的时区处理函数替代.
弃用的功能:
- 弃用通过引用分配 new 的返回值.
- 调用时传递引用被弃用.