我正在使用CloudFoundry在IBM Bluemix上构建应用程序。我设法部署了php-buildpack。如何启用SQLite支持? ...我甚至不确定spackite是否包含在buildpack中,因为只有" pdo_sqlite"列为扩展名。
如果我无法从这个buildpack中获得sqlite支持,那么有没有其他方法可以获得sqlite支持?
答案 0 :(得分:1)
虽然Jeff Sloyer的回答中的说明是正确的,但您可能需要重新考虑使用sqlite。 SQLite是一个进程内数据库,其内容在文件系统上备份。在Bluemix / Cloud Foundry中,您运行应用程序的文件系统是短暂的,这意味着每次重新启动应用程序时,您将丢失保存到文件系统中的任何内容,因此您将丢失数据库的内容。
答案 1 :(得分:0)
您必须在.bp-config/options.json
文件中启用库。如下例所示
{
"PHP_EXTENSIONS": ["pdo_sqlite"]
}
PDO只是PHP中数据库访问的包装器,有关详细信息,请查看StackOverflow上的what is the difference between sqlite3 and pdo_sqlite。
如果您在应用上运行phpinfo()
,则会看到安装了SQLite3。
如果您运行以下内容。
if (class_exists('SQLite3')) {
echo "sqlite3 is here";
}
它会返回并说安装了sqlite3。