PHP 5.3与5.5废弃/过期函数整理

做PHP的相信都知道,从PHP5.3开始加入了一个新的报错级别DEPRECATED,即将废弃/过期,我们一个个版本来过.

在php5.3被放弃的函数有:

  1. call_user_method() (使用 call_user_func() 替代)
  2. call_user_method_array() (使用 call_user_func_array() 替代)
  3. define_syslog_variables()
  4. dl()
  5. ereg() (使用 preg_match() 替代)
  6. ereg_replace() (使用 preg_replace() 替代)
  7. eregi() (使用 preg_match() 配合 'i' 修正符替代)
  8. eregi_replace() (使用 preg_replace() 配合 'i' 修正符替代)
  9. set_magic_quotes_runtime() 以及它的别名函数 magic_quotes_runtime() //开源软件:phpfensi.com
  10. session_register() (使用 $_SESSION 超全部变量替代)
  11. session_unregister() (使用 $_SESSION 超全部变量替代)
  12. session_is_registered() (使用 $_SESSION 超全部变量替代)
  13. set_socket_blocking() (使用 stream_set_blocking() 替代)
  14. split() (使用 preg_split() 替代)
  15. spliti() (使用 preg_split() 配合 'i' 修正符替代)
  16. sql_regcase()
  17. mysql_db_query() (使用 mysql_select_db() 和 mysql_query() 替代)
  18. mysql_escape_string() (使用 mysql_real_escape_string() 替代)
  19. mysql_close(); // 将不支持全部关闭, 需要改为:mysql_close($link);

废弃以字符串传递区域设置名称,使用 LC_* 系列常量替代,mktime() 的 is_dst 参数,使用新的时区处理函数替代.

PHP 5.4,代码如下:

mcrypt_generic_end()

mysql_list_dbs()

PHP 5.5,代码如下:

mcrypt_cbc()

mcrypt_cfb()

mcrypt_ecb()

mcrypt_ofb()

其中,PHP 5.3是废弃函数的开始,很多常用的以前的正则ereg全部替换preg,这个还好我以前知道,都替换了,但是魔术引号,居然也从PHP 5.3开始弃用,PHP 5.4就移除了,这个算是PHP 5.3的一个大变动吧.

PHP 5.4开始新增了很多特性,这个大家可以网上搜索下,新增很多特殊写法,可能按照新写法,老程序员就看不太懂啦~~~

PHP 5.5怎么说呢,今天才发现的~居然把MYSQL这个扩展去掉了,建议使用MYSQLI或者PDO,用了5.5很多程序都会报错,提示mysql_connect即将过期~~~会看到如下错误.

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in E:testnew 6.php on line 6

PHP5相对于4的跨进最大的就是类的部分,而影响更多的就是废弃这些老习惯的东西吧,虽然版本一直在升级,但是终究市场上还是大量的5.1.6-5.2.17。5.3开始废弃很多特性,导致很多程序也不敢直接上,5.5.直接秒杀了大量开源呵呵~~~