1

我正在尝试用 PHP 和 sqlite 做一些事情。我已经加载了 sqlite3 和 pdo_sqlite3 库(根据 php -m),php.ini 添加了库,但我仍然得到该函数(无论是 sqlite_open() 还是 sqlite_versioninfo())的致命错误没找到。phpinfo() 显示两个库都已加载。那么为什么我不能使用它们呢?

关于我的设置的一些信息:

我在 debian 上运行,我正在运行 Apache2 和 PHP 5.4.4-4。我不记得我是如何安装 PHP 的(显然不是通过 apt-get),但它是通过 Apache 启动的。

的输出php -m

root@ns:~# php -m [PHP Modules] bcmath bz2 calendar Core ctype curl date dba dom ereg exif fileinfo filter ftp gettext hash iconv imagick json libxml mbstring mhash mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar posix Reflection session shmop SimpleXML soap套接字 SPL sqlite3 ssh2 标准 sysvmsg sysvsem sysvshm 标记器 wddx xml xmlreader xmlwriter zip zlib

[Zend 模块]

确切的错误文本是PHP Fatal error: Call to undefined function sqlite_libversion() in [file] on line 14,它通过命令行和网络服务器发生。

如果我觉得还有什么要补充的,我会在这里补充。

4

2 回答 2

1

您使用来自sqlite扩展的函数,但您启用了单独的sqlite3扩展。

pdo_sqlite3 仅适用于 pdo。

于 2012-12-26T02:57:03.543 回答
0

如果你是用 php-fpm 运行 php,并且在 php-fpm 启动后编译了库,你应该重启 php-fpm,新的库才会生效。

于 2012-12-26T02:33:05.583 回答