Changed to SqlitePDO

This commit is contained in:
Marc Ole Bulling 2020-04-28 12:41:34 +02:00
parent 722bdf4087
commit 06bc8c271e
No known key found for this signature in database
GPG Key ID: C126AFC2A47B06FF

View File

@ -2,9 +2,8 @@
class ERequirementNotMet extends Exception { } class ERequirementNotMet extends Exception { }
const REQUIRED_PHP_EXTENSIONS = array('fileinfo', 'pdo_sqlite', 'gd'); const REQUIRED_PHP_EXTENSIONS = array('fileinfo', 'pdo_sqlite', 'gd');
const REQUIRED_SQLITE_VERSION_INT = "3008003"; //3.8.3 - this value will be checked const REQUIRED_SQLITE_VERSION = "3.8.3";
const REQUIRED_SQLITE_VERSION_STRING = "3.8.3"; //This value is just for error output, no check is done
class PrerequisiteChecker class PrerequisiteChecker
{ {
@ -57,10 +56,17 @@ class PrerequisiteChecker
private function checkForSqliteVersion() private function checkForSqliteVersion()
{ {
$sqliteVersion = SQLite3::version()["versionNumber"]; $sqliteVersion = self::getSqlVersionAsString();
if ($sqliteVersion < REQUIRED_SQLITE_VERSION_INT) if (version_compare($sqliteVersion, REQUIRED_SQLITE_VERSION, '<'))
{ {
throw new ERequirementNotMet('SQLite ' . REQUIRED_SQLITE_VERSION_STRING . ' is required, however you are running ' . SQLite3::version()["versionString"]); throw new ERequirementNotMet('SQLite ' . REQUIRED_SQLITE_VERSION . ' is required, however you are running ' . $sqliteVersion);
} }
} }
private function getSqlVersionAsString()
{
$dbh = new PDO('sqlite::memory:');
return $dbh->query('select sqlite_version()')->fetch()[0];
}
} }