PHP 5.3.x 中弃用的功能

PHP 5.3.0 新增了两个错误等级: E_DEPRECATEDE_USER_DEPRECATED. 错误等级 E_DEPRECATED 被用来说明一个函数或者功能已经被弃用. E_USER_DEPRECATED 等级目的在于表明用户代码中的弃用功能, 类似于 E_USER_ERRORE_USER_WARNING 等级.

下面是被弃用的 INI 指令列表. 使用下面任何指令都将导致 E_DEPRECATED 错误.

弃用函数:

  • 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_dbmysql_query 替代)
  • mysql_escape_string (使用 mysql_real_escape_string 替代)
  • 废弃以字符串传递区域设置名称. 使用 LC_* 系列常量替代.
  • mktimeis_dst 参数. 使用新的时区处理函数替代.

弃用的功能:

  • 弃用通过引用分配 new 的返回值.
  • 调用时传递引用被弃用.