在开发后台功能时,可能会需要自动获取当前使用的数据库类型和版本的情况,下面就举个简单的例子实现自动获取当前项目使用的是MySQL还是SQLite数据库及使用的相应数据库版本的方法:
// 数据库类型
$default = config('database.default');
$config = config('database.connections.' . $default);
$db_type = strtolower(trim($config['type'] ?? 'mysql'));
$db_name = 'Database';
$db_ver = '未知';
if ($db_type === 'mysql') {
$db_name = 'MySQL';
try {
$res = Db::query('SELECT VERSION() AS v');
$db_ver = $res[0]['v'] ?? '8.x';
} catch (\Throwable $e) {
$db_ver = '8.x';
}
} elseif ($db_type === 'sqlite') {
$db_name = 'SQLite';
try {
$res = Db::query('SELECT sqlite_version() AS v');
$db_ver = $res[0]['v'] ?? '3.x';
} catch (\Throwable $e) {
$db_ver = '3.x';
}
}
$db_version = $db_name . ' ' . $db_ver;
View::assign('db_version', $db_version);
return View::fetch();
前端获取数据:
数据库版本:{$db_version} 本站原创内容,转载请注明来源:https://www.liutonghui.com/300
评论列表(0条)
暂无评论