【问题标题】:Why use PDO over MySQL in PHP? [duplicate]为什么在 PHP 中使用 PDO 而不是 MySQL? [复制]
【发布时间】:2012-06-04 01:43:27
【问题描述】:

可能重复:
mysqli or PDO - what are the pros and cons?
PHP PDO and MySQLi

我最近问了一个question,结果有人告诉我在 MySQL 上使用“PDO”。这是为什么?与其他相比有什么优势?

【问题讨论】:

  • 它是 PDO,代表 PHP 数据对象,而不是 POD
  • 为了澄清,您仍然在访问 MySQL 数据库。 PDO 只是访问它的另一种(更好)方式 - 例如,您可以获得使用标准 mysql 函数无法完成的查询参数化。
  • PDO 是一个为与不同数据库引擎(MySQL、PostgreSQL 等)交互提供面向对象抽象的库,因此您只需使用一个 API 来处理所有连接。此外,PDO 支持准备好的语句,这意味着您无需在 SQL 查询中输入所有参数,而是只放置占位符,然后在尝试执行查询时绑定正确的值。这可以防止或至少使对您的应用程序执行 SQL 注入攻击变得非常困难。
  • 这是关于 PDO 的非常好的教程 a2znotes.blogspot.in/2014/09/introduction-to-pdo.html

标签: php mysql pdo


【解决方案1】:

mysql_* 功能不再维护,社区已开始deprecation process。相反,您应该了解prepared statements 并使用PDOMySQLi

如果您无法决定,this article 应该会帮助您选择。不过,您应该知道,PDO 能够与不同类型的 RDBMS 一起工作,而 MySQLi 是为特定的 RDBMS 设计的。

如果您决定使用 PDO,建议您关注this tutorial

【讨论】:

    【解决方案2】:

    首先,mysql_* 函数将是deprecated

    其次,PDO函数更易于使用,可以与非MySQL数据库一起使用。

    另外值得注意的可能是你不必使用 PDO,mysqli 也可以!

    【讨论】:

    • 更正:它们将被弃用MySQL extension manual 中尚未提及此类弃用
    • 感谢您指出这一点 - 更新了我的答案。
    【解决方案3】:

    PDO 为您提供了访问各种数据库的统一方法。快速浏览一下 Internet 可能会有所帮助。

    【讨论】:

      猜你喜欢
      • 2010-11-18
      • 1970-01-01
      • 2020-08-28
      • 1970-01-01
      • 2014-01-07
      • 1970-01-01
      • 2015-07-14
      • 2013-04-16
      相关资源
      最近更新 更多