gpt4 book ai didi

php - PDOException 消息的区域设置

转载 作者:行者123 更新时间:2023-11-30 01:03:26 26 4
gpt4 key购买 nike

这是我的代码:

$db = new PDO('mysql:host=192.168.1.1;dbname=mydb');

是否可以更改异常消息“无法连接到‘192.168.1.1’上的 MySQL 服务器”的语言?我使用 setlocale(LC_ALL, 'ru_RU.utf8') 更改 php 区域设置,它会影响日期
尽管如此,该消息是英文的。

最佳答案

class Cp1251ErrorExeption extends ErrorException {
public function getUtfMessage() {
return iconv('cp1251', 'utf-8', $this->getMessage());
}
function handleError($errno, $errstr, $errfile, $errline, array $errcontext){
if (0 === error_reporting())
return false;
throw new self($errstr, 0, $errno, $errfile, $errline);
}
}

try {
try {
set_error_handler('Cp1251ErrorExeption::handleError');
$db = new PDO('mysql:host=192.168.1.1;dbname=mydb');
} catch (PDOException $e) {
throw new Cp1251ErrorExeption($e->getMessage());
}
} catch (Cp1251ErrorExeption $e) {
echo $e->getUtfMessage();
}
restore_error_handler();

关于php - PDOException 消息的区域设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19892276/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com