【发布时间】:2017-06-08 08:02:08
【问题描述】:
它们看起来是一样的,但又是不同的。我不知道哪个是哪个:我知道我们可以使用 PDO 作为new PDO() 并使用prepare() 和query() 方法从数据库中获取数据。那么,如果这是扩展列表中提到的PDO,那么 pdo_mysql 和 mysqlnd 究竟是什么(通俗地说)是什么?
【问题讨论】:
-
其实我已经看过了,只是我还是无法在他们三个之间建立联系(不是双关语)
-
我认为(如果我错了,我相信有人会纠正我)mysqlnd 是将PHP 连接到mysql 的实际驱动程序。 PDO和mysqli是通过mysqlnd向mysql服务器发送数据的API。
-
在 PHP 中使用 PDO 需要 PDO 驱动程序,这就是
pdo_mysql。由于我们要使用 PDO 连接到一个 mysql db,我们还需要 mysql 驱动程序,这就是mysqlnd是什么。 -
听起来您可能不知道 PDO 可以用于许多不同的数据库,而不仅仅是 MySQL。您必须为要与 PDO 一起使用的每种数据库类型启用特定扩展(例如,用于 MySQL 的 pdo_mysql)。
标签: php pdo php-extension php-internals mysqlnd