共识:1.首先应该确定,中文也是应该用varchar来存储的
2.测试使用MySQL语句查看字符集 <br>
show variables like "%char%"; <br>
show variables like "collatio%"; <br>
如果查看后有编码不统一(中文应用gbk或utf8支持)的地方,可以特定地修改某一项的值,例如:
<code><span><span>SET</span> character_set_client=<span>'utf8'</span>;</span></code>
1.创建数据库
<code><span><span>CREATE</span><span>DATABASE</span> databasename <span>CHARACTER</span><span>SET</span><span>'utf8'</span><span>COLLATE</span><span>'utf8_general_ci'</span>;</span></code>
2.创建表
<code> CREATE TABLE industry_name ( <span>...</span> ) ENGINE=InnoDB DEFAULT CHARSET=utf8; </code>
这里与普通建表唯一不同的地方就是最后的一句话
测试看是否utf8统一
——————至此就可以在mysql查看的时候显示中文了—————-
然后想办法在php中得到中文
1.在代码前段写上
<code><span>header("Content-Type</span>: <span>text/html;charset=utf8");</span></code>
2.在connection建立以后写上
<code>mysqli_query(<span>$connection</span>, <span>"SET NAMES utf8"</span>);</code>
————至此就可以在PHP页面中显示中文了————-
最后,如果需要用到json_encode,那么需要注意最后一点
<code><span>$json_string</span> = json_encode(<span>$result_row</span>, JSON_UNESCAPED_UNICODE);</code>
即在普通的json_encode中多加入一个参数,至此就全部完成啦~
参考文章:
(转)Mysql中文乱码问题完美解决方案(包括建库、导入数据、网页)
彻底解决mysql中文乱码的办法
以上就介绍了从数据库创建到php读取json_encode中文正确显示,包括了json_encode方面的内容,希望对PHP教程有兴趣的朋友有所帮助。