/** * 分析数据库的错误信息 * @param type $message * @param type $params */ private static function getDbError($message, $params) { LsYii::info($message, __METHOD__); if (preg_match('/SQLSTATE\\[HY000\\] \\[2002\\]/', $message)) { $message = LsYii::gT('连接失败,请检查数据库配置'); } elseif (preg_match('/Unknown database|1049/', $message)) { $message = LsYii::gT('未找到数据库: ' . $params['dbName'] . ' 请先创建该库'); } elseif (preg_match('/failed to open the DB/', $message)) { $message = LsYii::gT('连接失败,请检查数据库配置: ' . $params['dbHost']); } elseif (preg_match('/1044/', $message)) { $message = LsYii::gT('当前用户没有访问数据库的权限'); } else { //$ret = false; } return $message; }