我正在尝试为 cli 安装 pdo-sqlite ext。
我尝试运行 sudo apt-get install php5-sqlite
并且它说 ext 已经是最新的但是当我运行 php -m
它没有出现在列表中。
在我的/usr/lib/php/文件夹中,我有 2 个名为 20131226 和 20160303 的文件夹。后一个 (20160303) 包含 pdo_sqlite.so 但是当我尝试将其添加到 php.ini 文件时,出现错误
PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php/20160303/pdo_sqlite.so' -/usr/lib/php/20160303/pdo_sqlite.so: undefined symbol :zend_fetch_resource2_ex in第 0 行未知
我正在运行 ubuntu 14.04 和 php 5.6。
有人能帮忙解决这个问题吗?还有谁能解释为什么 php 扩展存储在这些不同编号的文件夹中,以及 php 如何知道要查看哪个文件夹?谢谢。
最佳答案
我知道这个问题已经得到解答,但其他人可能和我有同样的问题。我希望这对某人有所帮助,因为我花了 3 天的时间来解决这个问题。
据我所知,/usr/local/lib
中有一个名为 libsqlite3.so.0
的错误文件,它指向 libsqlite3 .so.0.8.6
。我重命名了该文件以防某些事情需要它。使用命令:
cd/usr/local/lib
sudo mv libsqlite3.so.0 ./libsqlite3.so.0.back
但是你也可以删除它:
rm libsqlite3.so.0
引导我找到答案的线程:link
这解决了我的问题,我希望他们也能解决你的问题:)
关于php - 无法加载 pdo_sqlite.so 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44701256/