【问题标题】:Cannot use pdo_sqlite driver from PHP无法从 PHP 使用 pdo_sqlite 驱动程序
【发布时间】:2015-02-01 09:58:17
【问题描述】:

当我取消注释 php.ini 中的 pdo_sqlite 行时,我得到了

无法初始化使用模块 API=20131226 PHP 编译的模块模块 编译时使用模块 API=20121212 这些选项需要匹配

..尝试从FatFree 框架访问我​​的sqlite 数据库时。

我应该如何解决这个问题,尝试使用 pecl 重建扩展而不 成功。

php -v 给出了这个:

PHP 5.5.8 (cli)(构建时间:2014 年 1 月 10 日 15:37:29)
版权所有 (c) 1997-2013 PHP Group
Zend Engine v2.5.0,版权所有 (c) 1998-2013 Zend Technologies
使用 Xdebug v2.2.4,版权所有 (c) 2002-2014,作者 Derick Rethans

我应该补充一点,PDO 与 mysql 配合得很好。

补充:

pecl upgrade pdo_sqlite

失败,有:

Makefile:183: 目标“sqlite_driver.lo”的配方失败 make: *** [sqlite_driver.lo] 错误 1 错误:“制作”失败

【问题讨论】:

  • 我在 Linux 上,是的,/usr/lib/php/modules 下有 pdo_sqlite.so
  • 什么味道的Linux

标签: php sqlite driver


【解决方案1】:

无法初始化模块 Modulecompiled with module API=20131226 PHPcompiled with module API=20121212这些选项需要匹配

此错误表示您的扩展是在更高版本的 PHP 中编译的。您需要确保您的扩展与您使用的版本相匹配。

【讨论】:

  • 我知道这一点,请您告诉我如何处理,因为我找不到 pdo_sqlite 扩展至 phpize-it 的来源
  • 如果我不得不猜测,您可能在 5.5 下安装了 5.6 版本。在 CentOS 中,这将在 php-pdo 下,但我对 Arch 还不够熟悉。也许尝试重新安装 PHP
猜你喜欢
  • 2012-02-07
  • 2015-07-29
  • 2015-04-10
  • 1970-01-01
  • 1970-01-01
  • 2011-09-02
  • 2011-05-12
  • 2020-10-22
  • 2012-06-20
相关资源
最近更新 更多