• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

为什么不推荐在PHP中使用诸如"mysql_xxx()"的函数

php 搞代码 4年前 (2022-01-25) 25次浏览 已收录 0个评论
文章目录[隐藏]

今天,看到有人说不要再使用php的mysql_connect(), mysql_query()等函数了。
但是,我看到很多书籍教程里都用这种方法。
那么,为什么突然就不建议了呢?是基于什么技术背景考虑的呢?
不用这种方法,那应该选择哪种方法呢?

回复内容:

今天,看到有人说不要再使用php的mysql_connect(), mysql_query()等函数了。
但是,我看到很多书籍教程里都用这种方法。
那么,为什么突然就不建议了呢?是基于什么技术背景考虑的呢?
不用这种方法,那应该选择哪种方法呢?

难道是受到PDO及MySQLi的影响?

php也确实推荐过不要使用mysql_xx来连接MySQL数据库。推荐PDO、MySQLi来连接管理MySQL。

PDO扩展为PHP访问来&源gao@dai!ma.com搞$代^码%网搞gaodaima代码数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论你使用什么数据库,你都可以通过一致的函数执行查询和获取数据。注意,你并不能使用PDO扩展本身执行任何数据库操作,你必须使用一个database-specific PDO driver(针对特定数据库的PDO驱动)访问数据库服务器。
PDO并不提供数据库抽象,它并不会重写SQL或提供数据库本身缺失的功能,如果你需要这种功能,你需要使用一个更加成熟的抽象层。
PDO随PHP5.1发行,在PHP5.0的PECL扩展中也可以使用。PDO需要PHP5核心OO特性的支持,所以它无法运行于之前的PHP版本。

mysqli是PHP对mysql新特性的一个扩展支持。在PHP5中可以在php.ini中加载
mysql后面的i,指improved, interface, ingenious, incompatible or incomplete
-可以和mysql_xxxx一样的方式使用
-支持OO接口,简简单单调用
-支持MYSQL4。1引入的新特性
-通过mysqli_init() 等相关函数,可以设置高级连接选项

http://www.php.net/manual/en/mysqlinf…

官方有说明

我觉得还有一点, 现代的语言针对db client库的实现都有统一的dbapi接口来规范, 而mysql_xxx系列函数本身就是php初混乱命名的产物

PHP5.6以上的版本已将mysql_connect等函数废弃了,也就是说旧的程序一旦升级到了PHP5.6以上的版本,PHP就无法和数据库连接,网站系统到处的错误信息,甚至首页都打不开!!!

据说是这种方式存在安全隐患,个人感觉更可能是php为了朝oop发展,推荐开发者使用面向对象方式编程的原因吧


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:为什么不推荐在PHP中使用诸如"mysql_xxx()"的函数

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址