Php 为什么我需要mb_convert_编码来显示正确的字符
我的网站有charset=UTF-8,mysql数据库也设置为UTF-8编码Php 为什么我需要mb_convert_编码来显示正确的字符,php,html,mysql,encoding,mb-convert-encoding,Php,Html,Mysql,Encoding,Mb Convert Encoding,我的网站有charset=UTF-8,mysql数据库也设置为UTF-8编码 我的问题是,当我从mysql检索文本到网站时,我需要使用php函数mb_convert_编码(@db_字段,'utf-8','iso-8859-1')来正确显示文本。看起来系统认为mysql DB在iso-8859-1中。连接到数据库后立即运行此命令: mysqli_query("SET NAMES utf8"); /* or mysql_query */ 仅将表的排序规则设置为UTF-8是不够的,还需要指定(通过此
我的问题是,当我从mysql检索文本到网站时,我需要使用php函数mb_convert_编码(@db_字段,'utf-8','iso-8859-1')来正确显示文本。看起来系统认为mysql DB在iso-8859-1中。连接到数据库后立即运行此命令:
mysqli_query("SET NAMES utf8"); /* or mysql_query */
仅将表的排序规则设置为UTF-8是不够的,还需要指定(通过此查询)PHP和MySQL服务器之间通信期间应使用的编码。
更多详细信息如下: 确保UTF-8在任何地方的兼容性都很棘手;我的UTF-8清单如下:
- 确保每个源文件都保存为UTF-8
- 确保所有页面上都有
- 确保每个数据库表都设置为使用UTF-8
- 连接到数据库后运行
设置名称utf8
- 在脚本开头调用
,并尽可能使用mb\u internal\u encoding(“UTF-8”)
字符串函数mb\u
mysqli_query("SET NAMES utf8"); /* or mysql_query */
仅将表的排序规则设置为UTF-8是不够的,还需要指定(通过此查询)PHP和MySQL服务器之间通信期间应使用的编码。
更多详细信息如下: 确保UTF-8在任何地方的兼容性都很棘手;我的UTF-8清单如下:
- 确保每个源文件都保存为UTF-8
- 确保所有页面上都有
- 确保每个数据库表都设置为使用UTF-8
- 连接到数据库后运行
设置名称utf8
- 在脚本开头调用
,并尽可能使用mb\u internal\u encoding(“UTF-8”)
字符串函数mb\u