博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决iconv函数无法转换某些中文的问题
阅读量:5284 次
发布时间:2019-06-14

本文共 579 字,大约阅读时间需要 1 分钟。

原文: 

请先看以下代码,这个页面是GB2312编码的:

$str = '陶喆';
echo 'gb2312-'.$str;
echo '<br />';
$str = iconv( 'gb2312' ,'utf-8' , $str );
echo 'utf8-'.$str;
echo '<br />';
$str = iconv('utf-8' , 'gb2312' , $str );
echo 'gb2312-'.$str;
?>

程序做的事情很简单,首先打印出原始的陶喆,这是GB2312编码的,然后转换成UTF-8,最后再转换成GB2312。按照程序逻辑,第3行应该也打出陶喆,不过,实际的输出却是:
我们用UTF-8编码来显示这个网页,可以看到输出是
可见,在从gb2312转换到utf-8的过程中,“喆”不见了。
出现这个问题的原因是“喆”不属于gb2312字符集里的字符,而是属于gbk里的字符,所以,要从gb2312转换到utf-8就不行了
修改程序,将gb2312改成gbk,就可以解决这个问题了。
Ferris Xu
2009-08-21

posted on
2016-07-26 12:10 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/lonelyxmas/p/5707016.html

你可能感兴趣的文章
hdu 2807 The Shortest Path 矩阵
查看>>
熟悉项目需求,要知道产品增删修改了哪些内容,才会更快更准确的在该项目入手。...
查看>>
JavaScript 变量
查看>>
java实用类
查看>>
smarty模板自定义变量
查看>>
研究称90%的癌症由非健康生活习惯导致
查看>>
命令行启动Win7系统操作部分功能
查看>>
排序sort (一)
查看>>
Parrot虚拟机
查看>>
Teamcenter10 step-by-step installation in Linux env-Oracle Server Patch
查看>>
Struts2学习(三)
查看>>
Callable和Runnable和FutureTask
查看>>
GitHub 多人协作开发 三种方式:
查看>>
文本域添加编辑器
查看>>
Yum安装MySQL以及相关目录路径和修改目录
查看>>
java获取hostIp和hostName
查看>>
关于web服务器和数据库的各种说法(搜集到的)
查看>>
C# Stream 和 byte[] 之间的转换
查看>>
OMG: daily scrum nine
查看>>
redis与spring结合错误情况
查看>>