php下使用iconv需要注意的问题

string iconv ( string $in_charset , string $out_charset , string $str )

在使用这个函数进行字符串编码转换时,需要注意,如果将utf-8转换为gb2312时,可能会出现字符串被截断的情况发生。

此时可以使用以下方法解决:
复制代码 代码如下:
//author:zhxia
$str=iconv('utf-8',"gb2312//TRANSLIT",file_get_contents($filepath));
即在第二个参数出添加红色字部分,表示:如果在目标编码中找不到与源编码相匹配的字符,会选择相似的字符进行转换。

此处也可以使用://IGNORE 这个参数,表示忽略不能转换的字符。

时间: 2024-09-23 01:29:47

php下使用iconv需要注意的问题的相关文章

Cocos2d-x下使用iconv库

个人博客: alex-my.xyz     近来在客户端搭建打包APK的环境,以及解决中文乱码问题.网上找了很多资料,但总是各种不详细,非常麻烦.因此在这里把自己的过程详细记录下,如果有哪步不详细,请留言.     客户端使用的是cocos2d-x-2.0.4,是一个比较老的版本了.使用cygwin和eclipse交叉编译出APK包.环境搭建另外写一篇文章,这边主要讲使用iconv库.很多人尝试在解决乱码问题时,也都会尝试使用iconv库,但因为遇到各种问题而放弃,比较常见的有找不到"iconv

php下使用iconv需要注意的问题_php技巧

string iconv ( string $in_charset , string $out_charset , string $str ) 在使用这个函数进行字符串编码转换时,需要注意,如果将utf-8转换为gb2312时,可能会出现字符串被截断的情况发生. 此时可以使用以下方法解决: 复制代码 代码如下: //author:zhxia $str=iconv('utf-8',"gb2312//TRANSLIT",file_get_contents($filepath)); 即在第二

PHP下编码转换函数mb_convert_encoding与iconv的使用说明_php技巧

不过英文一般不会存在编码问题,只有中文数据才会有这个问题.比如你用Zend Studio或Editplus写程序时,用的是gbk编码,如果数据需要入数据库,而数据库的编码为utf8时,这时就要把数据进行编码转换,不然进到数据库就会变成乱码. mb_convert_encoding的用法见官方: http://cn.php.net/manual/zh/function.mb-convert-encoding.php 做一个GBK To UTF-8 复制代码 代码如下: <?php header(&qu

php iconv() : Detected an illegal character in input string

开始是这样用的$str = iconv('UTF-8', 'GB2312', unescape(isset($_GET['str'])? $_GET['str']:''));上线后报一堆这样的错:iconv() : Detected an illegal character in input string 考虑到GB2312字符集比较小,换个大的吧,于是改成GBK:$str = iconv('UTF-8', 'GBK', unescape(isset($_GET['str'])? $_GET['

PHP中iconv函数知识汇总

iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库.本文内容是参考了网上的其他资源,然后结合自己的实践,有需要的小伙伴可以参考下. 今天在修改论文在线的时候,遇到了iconv这个函数.学习一下 ? 1 2 3 4header('Content-Type: application/vnd.ms-excel;charset=UTF-8"'); $name=iconv('utf-8', 'gb2312', $data['year'].'年,第'.$data['period'

BugZilla之外的选择——另一个 Bug 跟踪管理系统 Mantis 在 IIS5 下安装指南

最开始想找一个 Bug 跟踪管理系统时,是想用 BugZilla 的,但是在实际安装使用时发现在 Windows 下安装非常费劲,需要自己改动 n 多的地方才能获得一个可以在Windows下使用的 Hack 版本,而且邮件设置怎么都没有成功,最后只好放弃.  在网上查找BugZilla相关资料的时候发现了 Mantis,这也是一个开源的 Bug 跟踪管理系统,基于 PHP+MySQL,支持 Windows:相对于BugZilla,比较轻量级,不过对于我们的开发团队来说是完全够用了,所以我在放弃了

PHP中iconv函数知识汇总_php技巧

今天在修改论文在线的时候,遇到了iconv这个函数.学习一下 header('Content-Type: application/vnd.ms-excel;charset=UTF-8"'); $name=iconv('utf-8', 'gb2312', $data['year'].'年,第'.$data['period'].'期通信录'); header('Content-Disposition: attachment;filename="' . $name . '.xls"

Windows下Python安装lxml 3.4.4

推荐安装方式:命令行安装 pip install lxml==3.4.4 easy_install lxml==3.4.4 会自动下载lxml-3.4.4-cp27-none-win32.whl安装 cp27表示是python2.7 不指定版本号的话,默认会下载最新版(3.5.0)源码编译安装,编译过程中会提示缺少libxml2和libxslt依赖 github源码地址:https://github.com/lxml/lxml lxml官网:http://lxml.de/installation

php中字符集转换iconv函数使用总结_php技巧

iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库. 用法如下: 复制代码 代码如下: $string = "欢迎访问!"; iconv("utf8","gbk",$string)//将字符串string  编码由utf8转变成gbk: 扩展如下: 复制代码 代码如下: echo $str= '欢迎访问!'; echo '<br />'; echo iconv('GB2312', 'UTF-8', $str