MySQL、 MySQLi和 PDO有什么区别?
哪一个最适合与 PHP-MySQL 一起使用?
Mysqli 是 mysql 的增强版。
PDO 扩展 定义了一个轻量级、一致的接口,用于访问 PHP 中的数据库。实现 PDO 接口的每个数据库驱动程序都可以将特定于数据库的特性作为常规扩展函数公开。
这些是访问 MySQL 后端的不同 API
所以这取决于你想要产生什么样的代码。如果你喜欢面向对象的层或纯函数..。
我的建议是
另外我的感觉是,mysqlAPI 可能会在 PHP的未来版本中被删除。
PHP
从 PHP 中使用 MySQL 有(超过)三种流行的方法。这里概述了 PHP: 选择 API的一些特性/区别:
我建议对准备好的语句使用 PDO。它是一个设计良好的 API,如果需要,它将使您更容易地移动到另一个数据库(包括任何支持 ODBC的数据库)。
具体来说,与旧的 MySQL 扩展相比,MySQLi 扩展提供了以下非常有用的好处。
OOP 接口(除了过程) 准备好的声明支持 事务 + 存储过程支持 语法更好 提高车速 增强型调试
公共服务处扩建部分
PHP Data Objects 延伸是资料库抽象层。具体来说,这不是一个 MySQL 接口,因为它为许多数据库引擎(当然包括 MYSQL)提供了驱动程序。
PDO 旨在提供一致的 API,这意味着当数据库引擎发生更改时,反映这一点的代码更改应该是最小的。当使用 PDO 时,您的代码通常只是通过更改正在使用的驱动程序在许多数据库引擎中“工作”。
除了具有跨数据库兼容性,PDO 还支持预处理语句、存储过程等,同时使用 MySQL 驱动程序。