PHP网页乱码的问题
在自己制作一个网页时,时常会遇到网页乱码的问题。
其实导致网页乱码主要有几个原因,以下给出解决方法。
1、HTML的字符编码问题
该问题较常见,也是最明显和最容易解决的。
在网页<head>中加上:
<meta http-equiv="Content-Type" Content="text/html;charset=utf8"/>
即可。
2、PHP的字符编码问题
这与上面类似。
在文件上方加上:
header("Content-type:text/html;charset=utf8");即可。
3、文件本身编码问题
不仅我们的内容有编码,文件本身也有编码。
使用Notepad++打开一份文件,可以看到右下角显示的内容。
就是文件本身的编码了。
![](https://images2015.cnblogs.com/blog/807072/201509/807072-20150906210713154-637297859.jpg)
可以使用Notepad++工具栏上的“格式”,为我们的文件转换编码。
4、数据库编码问题
MySQL数据在默认安装时是latin1编码,所以在没有注意的情况下很可能会导致网页乱码。
使用root进入数据库,
输入show variables like 'character%'
可以看到
character_set_client
character_set_connection
character_set_database
character_set_filesystem
character_set_results
character_set_server
character_set_database
character_set_filesystem
character_set_results
character_set_server
character_set_system
这7个值。
其中 set names ut8 这个命令能够将
character_set_client
character_set_connection
character_set_results
这3个设置成utf8。
所以在MySQL创建数据库时注意将字符集和排序规则设置为utf8,。
再在连接数据库的文件中,对数据库进行mysql_query("SET NAMES UTF8")。
则基本可保证网页不会出现乱码问题。