PHP MYSQL乱码问题,使用SET NAMES utf8校正

在进行PHP和MYSQL数据库编程时,常会遇到中文字符出现乱码的问题。这是由于PHP默认以ISO-8859-1编码输出,而MYSQL默认的编码方式是latin1。为了解决这个问题,我们可以采用使用SET NAMES utf8校正的方法。

具体的操作步骤如下:

1.修改mysql配置文件
将mysql配置文件的默认编码改为utf8,可通过修改my.ini或my.cnf文件实现。找到[mysqld]标签,将以下行添加到其中

character_set_server=utf8
collation-server=utf8_unicode_ci

并且在[client]标签中添加以下内容

default-character-set=utf8

保存并退出,重启mysql服务以应用更改。

2.使用SET NAMES utf8命令
在进行数据库连接之前,执行SET NAMES utf8命令,将当前连接编码修改为utf8,以便对中文数据进行正确的存储和显示。

示例1:使用PDO连接MYSQL数据库,设置字符集为utf8

$dsn = 'mysql:host=localhost;dbname=test;charset=utf8';
$username = 'root';
$password = '';
$options = array(
    PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
);
try {
    $dbh = new PDO($dsn, $username, $password, $options);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

示例2:使用mysqli扩展连接MYSQL数据库,设置字符集为utf8

$mysqli = new mysqli('localhost', 'root', '', 'test');
if ($mysqli->connect_errno) {
    echo 'Connection failed: ' . $mysqli->connect_error;
}
$mysqli->set_charset('utf8');

通过上面的方法,我们可以成功解决PHP和MYSQL中文乱码问题。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP MYSQL乱码问题,使用SET NAMES utf8校正 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • iOS中解决Xcode 8控制台乱码的方式

    以下是iOS中解决Xcode 8控制台乱码的方式的完整攻略。 问题描述 在Xcode 8中运行iOS应用程序时,如果使用了中文输出日志或者使用NSLog输出中文,则在控制台中会出现乱码。例如,下面的示例代码: let str = "Hello, 世界" print(str) NSLog(str) 输出结果在控制台中会呈现为以下效果: He…

    html 2023年5月31日
    00
  • python 解析XML python模块xml.dom解析xml实例代码

    Python是一门非常强大的编程语言,其拥有许多方便快捷的模块,其中xml.dom模块解析XML文件便是其中之一。本篇攻略详细讲解python模块xml.dom解析xml的具体用法。 一、xml.dom模块基本介绍 XML 是一种标记语言,和 HTML 类似,但 XML 的目的是传输数据,而不是展示数据。XML 模块提供了用于解析 XML 文档的类和函数。它…

    html 2023年5月30日
    00
  • win10系统怎么重置电脑?win10重置的两种方法(删除/不删除个人数据)

    以下是Win10系统重置电脑的两种方法: 方法一:删除个人数据 打开“设置”:点击“开始”菜单,选择“设置”图标。 进入“更新和安全”:在“设置”窗口中,选择“更新和安全”选项。 选择“恢复”:在“更新和安全”窗口中,选择“恢复”选项。 选择“开始”:在“恢复”窗口中,选择“开始”按钮。 选择“删除所有文件”:在“重置此PC”窗口中,选择“删除所有文件”选项…

    html 2023年5月17日
    00
  • Java解析xml的四种方法汇总

    Java解析xml的四种方法汇总 什么是XML XML(Extensible Markup Language)即可扩展标记语言,是一种标记语言,它可以用来标记电子文件使其具有结构性的标记语言。XML用于存储和传输数据。在XML文档中,标签没有被预定义是一种被使用者自定义的标记语言。 解析XML的四种方法 方法一:使用DOM DOM是一种基于树形结构的解析器,…

    html 2023年5月30日
    00
  • ps渐变工具怎么使用?ps渐变工具使用技巧

    以下是“ps渐变工具怎么使用?ps渐变工具使用技巧”的完整攻略: ps渐变工具怎么使用?ps渐变工具使用技巧 Photoshop中的渐变工具可以帮助用户快速创建渐变效果,使图像更加生动。下面是使用渐变工具的具体步骤和技巧。 步骤1:打开需要添加渐变的图像 在使用渐变工具前,用户需要打开需要添加渐变的图像。 步骤2:选择渐变工具 在打开图像后,用户需要选择渐变…

    html 2023年5月18日
    00
  • xml分页+ajax请求数据源+dom取结果实例代码

    分页是Web开发中经常使用的功能之一,XML作为一种通用的数据交换格式,也经常用于分页的开发中。 下面是一份关于实现XML分页+Ajax请求数据源+DOM取结果的攻略,包括示例代码和说明。 步骤一:编写后台返回XML格式的数据源接口 这里以Java语言作为示例,演示如何返回XML格式的数据源。 public class DataServlet extends…

    html 2023年5月30日
    00
  • 火绒安全软件如何设置简体中文?火绒安全设置简体中文教程

    以下是“火绒安全软件如何设置简体中文?火绒安全设置简体中文教程”的完整攻略: 火绒安全软件如何设置简体中文? 在火绒安全软件中,可以通过以下设置将界面语言设置为简体中文: 打开火绒安全软件:在电脑桌面或者开始菜单中,找到火绒安全软件图标,双击打开火绒安全软件。 进入设置界面:在火绒安全软件主界面中,点击右上角的“设置”按钮,进入设置界面。 选择语言选项:在设…

    html 2023年5月18日
    00
  • 使用Python生成XML的方法实例

    以下是使用Python生成XML的方法实例的完整攻略。 什么是XML XML(Extensible Markup Language)是一种被广泛应用的标记语言,用于描述数据,并且易于解析和传输。XML格式适用于描述网络数据与文档。XML由标记、内容、属性等组成,标签是XML的最基本的概念之一。标签包含起始标签、结束标签和其内部的数据,内容不推荐超过一行,属性…

    html 2023年5月30日
    00
合作推广
合作推广
分享本页
返回顶部