Image

知识库 → 在连接到 MariaDB 数据库时,PHP 中的强制编码规范

[脚本]
出版日期: 26.12.2024

默认情况下,所有托管计划都使用 utf8mb4 编码进行数据库连接。在罕见的情况下,当一个网站是很久以前开发的,编码可能会显示不正确。

代替正常的字母,您会看到所谓的“乱码”,类似于机器象形文字的符号。这是因为数据库及其所有表格使用的是与 utf8mb4 不同的编码。与此同时,所有旧网站都是使用 Windows-1251 编码开发的。

要修复不正确的显示,您需要在您的CMS中强制指定数据库连接的编码。

您需要打开PHP配置文件,并在指定数据库连接名称、登录名和密码的行后添加以下行:

ini_set('default_charset', 'Windows-1251');

此配置强制指定连接编码。

设置文件的最终版本应如下所示:

...
$hostname_dbconn = "localhost";
$database_dbconn = "DATABASE-NAME";
$username_dbconn = "DATABASE-USER";
$password_dbconn = "PASSWORD";

ini_set('default_charset', 'Windows-1251');
...

现在,使用键盘组合 Ctrl + F5(清除浏览器缓存)刷新页面 - 网站的编码显示现在应该可以正常工作。

要确保网站使用的编码,可以在浏览器中按键盘组合 Ctrl + u。在打开的选项卡中,在HTML代码的开头,找到类似以下的行:

<meta http-equiv="content-type" content="text/html; charset=windows-1251" />




暂时没有评论