mysql_*(或者说mysql扩展)被弃用的原因

身居漏室,心系天下

mysql_*是一个成熟的东西,许多网站都用这个对mysql数据库进行操作(如请求mysql_query(),mysql_connect()函数或mysql_real_escape_string()),但为什么php高版本中要将它移除呢,


这是一个典型的问题。为了说明这个问题,在技术层面详细说明为什么使用mysql_ *函数不再推荐:


一.没有后续的开发支持。


二.不是面向对象的。

 这好像不是一个好的理由,为什么非要面向对象呢?

三.mysql_*不支持:
  1.锁定,异步查询
  2.预处理语句或参数化查询(我想这一点非常重要)
  3.存储过程
  4.多条语句查询
  5.事物


因为它已过时,所以在未来的代码中尽量少用它们。

用更清晰,更好的错误处理和引用外部数据的方法比用一个单独的函数调用,手动处理错误的支持就显得尤为重要。

京ICP备14008139号-1