php网页抓取乱码(1.PHP解决中文乱码问题(一)_原油期货开发)
优采云 发布时间: 2022-02-10 22:21php网页抓取乱码(1.PHP解决中文乱码问题(一)_原油期货开发)
1.PHP解决中文乱码问题
很多情况下程序出现中文输出时,页面会显示乱码
一般有两个原因
编码(charset)设置错误,导致浏览器解析错误的编码,导致乱码文件以错误的编码打开保存,如GBK编码的文件,以UTF-8编码格式打开,然后在UTF-8格式保存,会有乱码问题
对乱码进行分类,针对性解决
1.1 解决HTML页面中文乱码问题
如果你的HTML文本文件有芯片问题,那么可以在head标签中加入UTF-8编码(国际编码):UTF-8是一种没有国家的编码,也就是一种独立的语言,任何语言都可以使用的。
1.2 HTML和PHP混合页面解决方案
如果混合使用 HTML 和 PHP,除了第一种方法中描述的操作外,还需要在 PHP 文件的顶部添加这段代码:
1.3 纯PHP页面中文乱码问题(数据是静态的)
如果PHP页面有芯片,在页面开头添加如下代码即可
1.4 PHP+MySQL中文乱码问题
除了第三个操作,数据库代码必须在数据查询/修改/添加之前添加。
而且需要注意的是这里的UTF8和前面的不一样,中间没有横线
如果数据库版本大于4.1,可以在链接数据库操作后设置字符编码,如下
$conn = mysqli_connect('localhost','root','root','db_name');
mysqli_set_charset($conn,'utf8');
UTF-8 编码只是其中一种编码。如果不想使用utf-8编码,也可以使用其他编码,需要进行编码转换
需要注意的一点是,它是在需要进行数据库操作的php程序之前添加的
mysql_query("set names encoding");
编码必须与 PHP 编码一致。如果 PHP 编码为 gb2312,则 MySQL 编码为 gb2312。如果 PHP 页面编码为 utf-8,则 MySQL 编码为 utf-8。这样可以使数据与页面编码保持一致,插入或检索数据时的芯片更少