Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何配置sqlite2&;3在ubuntu 11.10上的PHP5.3.6中_Php_Ubuntu_Sqlite - Fatal编程技术网

如何配置sqlite2&;3在ubuntu 11.10上的PHP5.3.6中

如何配置sqlite2&;3在ubuntu 11.10上的PHP5.3.6中,php,ubuntu,sqlite,Php,Ubuntu,Sqlite,如何在Ubuntu 11.10上的PHP5.3.6中配置sqlite2和sqlite3 我从事两个PHP项目:一个使用sqlite2,另一个使用sqlite3。我正在开发Ubuntu 11.10。我的问题是我的sqlite2代码没有运行;它给出了错误致命错误:调用未定义的函数sqlite\u open()。我想运行这两个代码 听起来您需要确定PHP中可用的版本,然后相应地使用正确的函数。根据您的评论,我假设sqlite模块将在扩展列表中显示为“sqlite”或“sqlite3”(我自己不使用它们

如何在Ubuntu 11.10上的PHP5.3.6中配置sqlite2和sqlite3


我从事两个PHP项目:一个使用sqlite2,另一个使用sqlite3。我正在开发Ubuntu 11.10。我的问题是我的sqlite2代码没有运行;它给出了错误
致命错误:调用未定义的函数sqlite\u open()
。我想运行这两个代码

听起来您需要确定PHP中可用的版本,然后相应地使用正确的函数。根据您的评论,我假设sqlite模块将在扩展列表中显示为“sqlite”或“sqlite3”(我自己不使用它们)


您可能希望编写一些快捷方式函数,这样就不必在代码中进行版本检查。

我已通过阅读下面链接中给出的解决方案解决了问题


听起来好像您没有加载必要的PHP模块。你试过
php-m
检查吗?可能有用吗@哈弗谢谢,但我的要求是我要同时运行代码sqlite2和sqlite3。我已经尝试过php-m命令在列表中显示sqlite3,但没有显示sqlite2,所以如何在每次代码中都支持bothAs,否则就意味着sqlite2没有可用的驱动程序,对吗?我不理解你的问题。我的代码方法是:如果sqlite2接口在PHP中可用,这可能意味着sqlite2安装在机器上;如果sqlite3接口可用,可能意味着机器上安装了sqlite3。啊。。。您想同时运行版本2和版本3吗?不,我在不同的项目上工作过1使用sqlite2,在sqlite3中使用另一个。配置后,我为sqlite3配置了php支持,仅支持sqlite3,而不支持两者。因此,换句话说,您希望“sqlite2”和“sqlite3”出现在
php-m
中?如果是这样,请在问题中告诉我们您是如何重新配置PHP的。您是使用必要的标志重新编译它,还是仅仅修改php.ini?
$sqlite2 = extension_loaded('sqlite');
$sqlite3 = extension_loaded('sqlite3');
if (!$sqlite2 && !$sqlite3)
{
    die('Neither extension loaded');
}

if ($sqlite2)
{
    // Use sqlite_open()
}
else
{
    // Use sqlite3::open()
}