Как включить поддержку SQLite в CloudFoundry (PHP Buildpack)

Я создаю приложение на IBM Bluemix, используя CloudFoundry. Мне удалось развернуть PHP-buildpack. Как я могу также включить поддержку SQLite? … Я даже не уверен, включен ли sqlite в buildpack-пакет, поскольку в качестве расширения указан только «pdo_sqlite».

Если я не могу получить поддержку sqlite из этого пакета, есть ли другой способ, как получить поддержку sqlite?

1

Решение

Хотя инструкции в ответе Джеффа Слойера верны, вы можете пересмотреть вопрос об использовании sqlite. SQLite является внутрипроцессной базой данных, и ее содержимое сохраняется в файловой системе. В Bluemix / Cloud Foundry файловая система, на которой вы запускаете ваше приложение, является эфемерной, что означает, что каждый раз, когда вы перезапускаете свое приложение, вы потеряете все, что вы сохранили в файловой системе, таким образом, вы потеряете содержимое своей базы данных.

1

Другие решения

Вы должны включить библиотеку в .bp-config/options.json файл. Как в примере ниже

{
"PHP_EXTENSIONS": ["pdo_sqlite"]
}

PDO — это просто оболочка для доступа к базе данных в PHP, для получения дополнительной информации проверьте в чем разница между sqlite3 и pdo_sqlite на StackOverflow.

Если вы бежите phpinfo() В вашем приложении вы увидите, что SQLite3 установлен.

sqlite3

Если вы запустите следующее.

if (class_exists('SQLite3')) {
echo "sqlite3 is here";
}

Он вернется и скажет, что sqlite3 установлен.

0