PHP通过iconv将字符串从GBK转换为UTF8字符集


Posted in PHP onJuly 18, 2011

1. iconv()介绍
iconv函数可以将一种已知的字符集文件转换成另一种已知的字符集文件。例如:从GB2312转换为UTF-8。
iconv函数在php5中内置,GB字符集默认打开。
2. iconv()错误
iconv在转换字符”—”到gb2312时会出错,解决方法是在需要转成的编码后加 “//IGNORE”,也就是iconv函数第二个参数后.如下:

iconv("UTF-8", "GB2312//IGNORE", $data)

ignore的意思是忽略转换时的错误,如果没有ignore参数,所有该字符后面的字符串都无法被保存。
3. iconv()例子
例1:
<?php 
echo $str= ‘你好,这里是卖咖啡!'; 

echo '<br />'; 

echo iconv('GB2312', 'UTF-8', $str); //将字符串的编码从GB2312转到UTF-8 

echo '<br />'; 

echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符个数截取而非字节 

print_r(iconv_get_encoding()); //得到当前页面编码信息 

echo iconv_strlen($str, 'UTF-8'); //得到设定编码的字符串长度 
?>

例2:
如果你的PHP文件是UTF-8编码的,那么下面的代码就可以正确输出:
<?php 
$str='我爱百度'; 

$utf=''; 

for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); 

echo $utf; 
?>

如果你的PHP文件是GB的,那么下面的代码可以工作:
<?php 
$str='我爱百度'; 

$str=iconv("GBK", "UTF-8", $str); 

$utf=''; 

for ($i=0;$i<strlen($str);$i++) $utf.=sprintf("%%%02X",ord(substr($str,$i,1))); 

echo $utf; 
?>

以上情况下,程序输出的内容是:
%E6%88%91%E7%88%B1%E7%99%BE%E5%BA%A6
PHP 相关文章推荐
php 清除网页病毒的方法
Dec 05 PHP
快速开发一个PHP扩展图文教程
Dec 12 PHP
一个php生成16位随机数的代码(两种方法)
Sep 16 PHP
PHP实现UTF-8文件BOM自动检测与移除实例
Nov 05 PHP
Yii框架关联查询with用法分析
Dec 02 PHP
php可应用于面包屑导航的迭代寻找家谱树实现方法
Feb 02 PHP
简单谈谈php延迟静态绑定
Jan 26 PHP
使用ThinkPHP生成缩略图及显示
Apr 27 PHP
php处理抢购类功能的高并发请求
Feb 08 PHP
PHP通过文件路径获取文件名的实例代码
Oct 14 PHP
php实现大文件断点续传下载实例代码
Oct 01 PHP
PHP实现简单用户登录界面
Oct 23 PHP
PHP中英混合字符串截取函数代码
Jul 17 #PHP
PHP操作数组的一些函数整理介绍
Jul 17 #PHP
如何突破PHP程序员的技术瓶颈分析
Jul 17 #PHP
过滤掉PHP数组中的重复值的实现代码
Jul 17 #PHP
PHP二维数组的去重问题解析
Jul 17 #PHP
简单的PHP多图上传小程序代码
Jul 17 #PHP
一个PHP验证码类代码分享(已封装成类)
Jul 17 #PHP
You might like
apache+php+mysql安装配置方法小结
2010/08/01 PHP
PHP 字符串正则替换函数preg_replace使用说明
2011/07/15 PHP
php字符串替换函数substr_replace()用法实例
2015/03/17 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
如何在PHP环境中使用ProtoBuf数据格式
2020/06/19 PHP
JavaScript 格式字符串的应用
2010/03/29 Javascript
探讨js中的双感叹号判断
2013/11/11 Javascript
jquery中map函数与each函数的区别实例介绍
2014/06/23 Javascript
jQuery中[attribute!=value]选择器用法实例
2014/12/31 Javascript
jquery实现邮箱自动填充提示功能
2015/11/17 Javascript
js编写贪吃蛇的小游戏
2020/08/24 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
2016/04/05 Javascript
详解Backbone.js框架中的模型Model与其集合collection
2016/05/05 Javascript
jQuery过滤特殊字符及JS字符串转为数字
2016/05/26 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
JS判断iframe是否加载完成的方法
2016/08/03 Javascript
javascript特殊文本输入框网页特效
2016/09/13 Javascript
jQuery时间验证和转换为标准格式的时间格式
2017/03/06 Javascript
基于原生js运动方式关键点的总结(推荐)
2017/10/01 Javascript
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
2020/04/13 Javascript
python应用程序在windows下不出现cmd窗口的办法
2014/05/29 Python
python概率计算器实例分析
2015/03/25 Python
Python实现周期性抓取网页内容的方法
2015/11/04 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
2017/11/11 Python
浅谈Python基础—判断和循环
2019/03/22 Python
Python之Matplotlib文字与注释的使用方法
2020/06/18 Python
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
法国足球商店:Footcenter
2019/07/06 全球购物
医院护士的求职信
2014/01/03 职场文书
大学竞选班干部演讲稿
2014/08/21 职场文书
村长反四风问题个人对照检查材料
2014/09/21 职场文书
无子女夫妻离婚协议书(4篇)
2014/10/20 职场文书
群众路线教育实践活动心得体会(教师)
2014/10/31 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
电脑只能进入安全模式无法正常启动的解决办法
2022/04/08 数码科技
Elasticsearch Recovery 详细介绍
2022/04/19 Java/Android