从mysql迁移到mysqli或pdo?

Rob*_*Rob 12 php mysql mysqli pdo

重复:mysqli或PDO - 有哪些优点和缺点?

我希望将一个网站从mysql移动到mysqli或pdo作为主要的学习工具,但如果可能的话,还要提高性能.

我已经阅读了http://php.net/manual/en/mysqli.overview.php,看起来两者都符合我的需求,但无论如何都不会强烈倾斜.

该网站目前主要使用非面向对象的代码,但我确实有其他语言的OO经验.绝大多数查询都是简单的复杂select语句,只有很少的更新/插入.您对我自己的教育和这个特定网站最有用的建议是什么?

如果您需要任何其他信息,请告诉我.

谢谢.

Noa*_*ich 20

PDO Pro:

  • 从5.x到PHP原生
  • 支持命名参数而不是数字索引?
  • 相同的抽象库支持多个不同的RDBM

Mysqli Con's:

  • 在数据库中正确存储和检索大对象时遇到问题.
  • 不支持命名参数.

否则,两个库基本上都是同一件事的不同口味.它们都具有引用参数的功能,并且都支持参数化查询.

如果上述任何一个论点都没有影响你,那么根据它的语法,风格等,选择你喜欢的任何一个库.


One*_*erd 9

我不相信PDO会给你任何性能提升,但它给你这两个非常有吸引力的长期好处:

  • 只需几次代码更改,您就可以扩展应用程序以使用其他数据库
  • PDO库内置了大部分安全性

如果您不了解#1和#2的好处,那么只需坚持使用经过验证的mysql库(您至少使用了mysql_real_escape_string,对吧)?

如果我正在学习一个新的PHP数据库库,我相信PDO是可行的方法,特别是如果您要创建一个可以在除您自己的服务器之外的各种系统上使用的Web应用程序.


小智 8

来自http://www.php.net/manual/en/mysqli.overview.php:

虽然PDO有其优点,例如干净,简单,可移植的API,但它的主要缺点是它不允许您使用最新版MySQL服务器中提供的所有高级功能.例如,PDO不允许您使用MySQL对多语句的支持.