select('system_settings', ['setting_key', 'setting_value']); } catch (\Exception $e) { // 表不存在或其他错误,返回默认值 self::$settings = self::getDefaults(); return self::$settings; } $result = []; foreach ($settings as $setting) { $result[$setting['setting_key']] = $setting['setting_value']; } // 合并默认值 $defaults = self::getDefaults(); foreach ($defaults as $key => $value) { if (!isset($result[$key])) { $result[$key] = $value; } } self::$settings = $result; return $result; } catch (\Exception $e) { // 出错时返回默认值 return self::getDefaults(); } } /** * 获取单个设置值 */ public static function get($key, $default = '') { $settings = self::getAll(); return isset($settings[$key]) ? $settings[$key] : $default; } /** * 获取默认设置值 */ private static function getDefaults() { return [ 'site_title' => 'PK10 Speed Racing', 'site_description' => 'PK10 Speed Racing - Online Betting Platform', 'site_keywords' => 'pk10, speed racing, betting, online game', 'site_logo' => '/Static/images/logo.png', 'site_favicon' => '/Static/css/favicon.ico', 'site_copyright' => '© 2025 PK10 Racing. All rights reserved.' ]; } /** * 清除缓存(当设置更新后调用) */ public static function clearCache() { self::$settings = null; } }