Kohana 3.3 不使用 MySQLi 驱动程序


Kohana 3.3 not using MySQLi driver

我正在做一个使用 Kohana 3.3 的项目。我遇到了想要连接到数据库的问题。该应用程序告诉我它正在使用MySQL,并且它已经退化了。

为了解决这个问题,我下载了 Kohana 3.3 的 MySQLi 驱动程序并按照说明进行操作(在模块文件夹中创建一个 mysqli 文件夹并在引导中添加新行.php以启用它)。

但是,当我尝试执行任何数据库操作时,它仍然说它使用的是MySQL。错误显示:"Database_Exception [ 8192 ]:mysql_connect():mysql 扩展已弃用,将来将被删除:改用 mysqli 或 PDO"。

我用于启用模块的行是'mysqli' => MODPATH.'mysqli', // MySQLi support for Kohana

我正在使用的MySQLi驱动程序是这个(链接到github)。

谁能看到出了什么问题?

提前谢谢。

我也遇到了这个问题。

这个问题已经在Kohana论坛上讨论过。 下一个版本(3.4)将包括对Kohana数据库模块的更改,因此您可以使用MySQLi库。

在此之前,我已经禁用了通过更改error_reporting出现的已弃用错误index.php

error_reporting(E_ALL & ~E_DEPRECATED);

希望这有帮助

仅仅启用模块是不够的。

由于Kohana 3.3自动加载器区分大小写,因此MODPATH/mysqli/classes/kohana/database/mysqli.php应该变得MODPATH/mysqli/classes/Kohana/Database/MySQLi.php例如。

您必须编辑 APPPATH/config/database.php并将驱动程序设置为"MySQLi"或将 Database::$default 设置为正确的默认数据库实例名称。(使用"MySQLi"作为驱动程序的那个。

可以肯定的是,不要在 APPPATH 之外编辑配置文件。而是将文件复制到 APPPATH 并编辑该文件。通常不必在 APPPATH 之外编辑文件。当然,允许更新模块以使用新版本。但是 APPPATH 之外的配置文件应用作示例/蓝图。