【问题标题】:Is it possible to use mysqli as database driver in Laravel?是否可以在 Laravel 中使用 mysqli 作为数据库驱动程序?
【发布时间】:2015-08-03 12:27:14
【问题描述】:

laravel 中的数据库配置为:

'mysql' => [
'read' => [
    'host' => '192.168.1.1',
],
'write' => [
    'host' => '196.168.1.2'
],
'driver'    => 'mysql',
'database'  => 'database',
'username'  => 'root',
'password'  => '',
'charset'   => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix'    => '',
],

它使用PDO连接连接mysql服务器。有什么方法可以配置它使用mysqli而不是PDO驱动程序。我在 laravel 中使用 PDO 驱动程序读取运行数据库的错误消息时遇到问题。有没有办法使用mysqli?

【问题讨论】:

  • mysqli 不是数据库驱动程序。这是一个用于连接 MySQL 的库。解决你的问题,不要随意更改。

标签: php mysql laravel mysqli


【解决方案1】:

有没有办法使用mysqli?

没有。

我在阅读错误信息时遇到问题

只要解决这个问题。
如果您认为 PDO 有任何问题,为什么不就该问题提出问题呢?

【讨论】:

  • 实际上的问题是 PDO 错误消息不包含任何正确的消息。很难找到 sql 中发生的实际错误。非常令人失望的是,他们不支持具有正确错误消息的 mysqli 扩展。感谢您的回复。
  • @SabbirAhmedSourove - PDO 具有与 mysqli 相同的消息。这两个库都只是传递 MySQL 报告的内容,即使源代码相似。我不认为你的问题是 PDO,换成 mysqli 对你没有任何好处。
  • 这是一个有效的问题。 Laravel 8(当前版本)不支持开箱即用的 MySQLi 有点缺点。 database.php 文件本身有一条注释说:“Laravel 中的所有数据库工作都是通过 PHP PDO 工具完成的”。但是请注意,有以下软件包声称提供 mysqli 支持。 github.com/shakahl/laravel-eloquent-mysqli
  • @omarjebari 恐怕你的这个实现将是一场灾难。单独的自定义转义功能......
猜你喜欢
  • 2012-11-15
  • 1970-01-01
  • 2017-02-10
  • 2012-09-18
  • 1970-01-01
  • 2021-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多