字符串转码问题

nihao955 2014-02-10 04:42:18
$str="黑色";
这个字符串我用mb_detect_encoding函数检查是 UTF-8编码,
$s1 = iconv ( 'utf-8', 'gbk', $string );
$s1 = mb_convert_encoding ( $string, "GBK", "UTF-8" );

我用上面两种方法进行转码,结果都会乱码,请教是什么原因?
...全文
110 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yunfeifan 2014-02-10
  • 打赏
  • 举报
回复
乱码很正常啊,你的页面是utf8的,但是你显示gbk的内容,所以就乱码了 你echo urlencode($s1);看看结果应该是每个汉字两字节的结果 %BA%DA%C9%AB,这个就是gbk的黑色。
xuzuning 2014-02-10
  • 打赏
  • 举报
回复
$str="黑色"; 如果用mb_detect_encoding函数检查是 UTF-8编码 那么就表示你的程序文件是 utf-8 编码的 既然程序是 utf-8 编码的,当然输出也就是 utf-8 的了 你把 utf-8 的转成 gbk 的,出现乱码就是必然的了
ImN1 2014-02-10
  • 打赏
  • 举报
回复
字符太少的情况下detect会不准确的 至于乱码还会受输出的编码影响,例如页面指定编码是gbk,但php输出的是utf-8字串,因素很多

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧