【发布时间】:2013-03-04 21:44:34
【问题描述】:
我刚刚开始使用MYSQLi 而不是MYSQL,我遇到了一个巨大的烦恼:每次查询都必须连接到数据库等等。当我没有在旧的 MYSQL 中时,为什么我现在必须这样做?或者有没有办法不必这样做?
几个例子:
Mysql:
mysql_query("SELECT id FROM table");
现在在 Mysqli 我总是要做:
mysqli_query($db, "SELECT id FROM table");
我也必须这样做:
mysqli_last_id($db);
和
mysqli_real_escape_string($db);
我整晚都试图找到这个问题的答案,但我什么也找不到。
【问题讨论】:
-
MySQL 扩展试图在全局范围内重用与
mysql_connect建立的最新连接。在同一脚本中处理多个连接时,这是不直观且危险的。这是它被弃用的原因之一。您应该真正使用 MySQLi 的面向对象版本,创建一个 db 对象并通过您的脚本重用它。 -
创建你自己的数据库类,OOP 来拯救你!
标签: php mysql sql database mysqli