Mysql和PHP新闻细分



我刚刚读到http://marc.info/?l=php-internals&m=131031747409271&w=2.

我使用mysql_query在我所有的php代码为去年访问我的mysql数据库。

在那个链接的信息,从PHP领导,意味着我不能再使用mysql_query?

mysql_query将来会停止工作吗?如果是这样,什么时候会发生?用php访问mysql数据库的新方法是什么?

有人介意简化链接在简单的英语说什么吗?

我很担心,谢谢你。 额外

: deprecated到底是什么意思,它不是非技术人员常用的词…?而不是mysql_query,我用什么?我写mysqli_query吗?还是PDO_query ?mysql和mysqli和pdo查询的区别是什么?我需要使用mysqli或pdo软件而不是mysql数据库吗?

多年来,一直建议使用MySQLiPDO扩展,而不是旧的MySQL扩展。


参考PHP手册的这一页: api概述(引用):

什么是PHP的MySQL扩展?

这是最初的扩展,旨在让您开发PHP与MySQL数据库交互的应用程序。mysql扩展名提供过程接口,并且仅用于MySQL版本早于4.1.3。这个扩展可以使用MySQL 4.1.3或更新的版本,但不是所有最新的MySQL服务器特性将可用。
如果你正在使用MySQL版本4.1.3或更高,强烈建议您使用


你发布的链接说mysql_*函数不会很快消失,所以不要惊慌(引用):

别慌!这不是一个增加错误或删除错误的建议受欢迎的扩展。
还没有,因为太流行了现在。


但这个想法是,mysql_*函数不应该再使用(因为它已经多年的情况下) -但人们仍然在使用这些,而不是PDOMySQLi

一个帮助人们认识到有比mysql_*更好的解决方案的想法/建议是在语言的未来版本中将这些旧函数标记为已弃用的

这可能不会发生在PHP 5.4 (已经在alpha阶段);也许是针对PHP 5.5——但那个版本还远未发布——可能至少要两年……


现在,对于您的新项目,您可能不应该使用mysql_*;相反,你应该使用MySQLi或PDO,它们是最新的,并且支持MySQL服务器的更多功能。

但是对于你的旧代码,继续使用mysql_*函数可能是可以的——至少在一段时间内:不需要重写你现有的应用程序。



deprecated实际上是什么意思,它不是非的常用单词技术人员……?

这意味着,当这些函数被弃用时,当你尝试调用它们时,你会得到一个警告,说你正在使用旧的函数,不应该再使用了——并且总有一天会消失。


代替mysql_query,我用什么?我写mysqli_query吗?或PDO_query吗?

阅读MySQLi和PDO的文档;-)


mysql和mysqli和pdo查询的区别是什么?

有两个扩展:

  • MySQLi是改进的扩展,用于与MySQL服务器通信
  • PDO是一个扩展,允许几个SQL服务器(Oracle, SQLIte, MySQL,…)与相同的PHP类通信。


我需要使用mysqli或pdo软件而不是mysql数据库吗?

在服务器端,您将仍然使用相同的MySQL服务器。
在客户端,选择您想要的扩展名

mysql_query将被弃用,但不会在未来一两年内。这个扩展长期以来一直受到反对,最终弃用的第一步终于开始了。我不会太担心——你现在完全可以控制——

转换为mysqli是最容易的,但PDO更可取。

从邮件列表中:

别慌!这不是一个增加错误或删除这个流行扩展的建议。\现在还不行,因为现在这么做太流行了

这篇文章所讨论的是试图让用户意识到文档中有"更好"的替代方案,并在将来弃用它。

最新更新