mysql和php新闻细分

时间:2011-07-15 16:02:39

标签: php mysql

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

我在去年的所有PHP代码中使用mysql_query来访问我的mysql数据库。

来自PHP领导者的那个链接的信息是否意味着我不能再使用mysql_query了?

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

有人会介意用英语简化链接所说的内容吗?

我很担心,谢谢。

额外: 的 贬低实际意味着什么,对于非技术人员来说,这不是一个常用词......?而不是mysql_query,我该使用什么?我写mysqli_query吗?还是PDO_query? mysql和mysqli和pdo查询有什么区别?我是否需要使用mysqli或pdo软件而不是mysql数据库?

3 个答案:

答案 0 :(得分:3)

多年来,我们建议使用 MySQLi PDO 扩展程序 - 而不是旧的MySQL扩展程序。


作为参考,请参阅PHP手册的此页面:Overview of APIs (引用)

  

什么是PHP的MySQL扩展?

     

这是旨在允许您开发PHP的原始扩展   与MySQL数据库交互的应用程序。 mysql扩展   提供程序界面,仅供使用   MySQL版本早于4.1.3。此扩展名可以使用   MySQL 4.1.3或更新版本,但不是所有最新的MySQL   服务器功能将可用。
如果您使用的是MySQL   版本4.1.3或更高版本强烈建议您使用   相反,mysqli扩展


您发布的链接指出mysql_*函数不会很快消失,所以不要恐慌(引用)

  

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


但是我的想法是不再使用mysql_*函数(已经存在多年的情况) - 但人们仍在使用这些函数,而不是PDOMySQLi

帮助人们意识到有比mysql_*更好的解决方案的想法/主张是将这些旧功能标记为已弃用 - 在该语言的未来版本中

PHP 5.4 可能不会发生(已经处于alpha阶段);也许对于PHP 5.5 - 但是那个还远未发布 - 可能至少两年......


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

但是对于您的旧代码,可以继续使用mysql_*函数 - 至少暂时不用:不需要重新编写现有的应用程序。



  

弃用实际意味着什么,它不是非常用词   技术人员......?

这意味着,当这些函数被弃用并且您尝试调用它们时,您将收到一条警告,告知您正在使用旧函数,这些函数不应再使用 - 并且这些函数将在某一天消失。


  

而不是mysql_query,我该用什么?我写mysqli_query吗?要么   PDO_query?

阅读MySQLiPDO; - )

的文档


  

mysql与mysqli和pdo查询有什么区别?

这是两个扩展:

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


  

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

在服务器端,您仍将使用相同的MySQL服务器。
在客户端,您可以选择所需的扩展名。

答案 1 :(得分:0)

mysql_query将被弃用,但不会在未来一两年内被弃用。长期以来一直倡导这种扩展,并最终实现最终弃权的第一步。我不会太担心它 - 你现在已完全掌控了。

转换为mysqli最简单,但最好PDO

答案 2 :(得分:0)

从邮件列表中:

  

不要惊慌! 这不是添加错误或删除此热门扩展程序的提案。 \   至少还没有,因为它现在太受欢迎了

所有这篇文章都在试图让用户了解文档中“更好”的替代品,并在将来弃用它。