PHP中iconv函数转码时截断字符问题的解决方法_php技巧

iconv是转换编码的,但是在中文转码时候出现显示不全问题。 

复制代码 代码如下:

 
iconv("UTF-8","GB2312//IGNORE",$data);    加上//IGNORE,忽略错误 

 
或者用mb_convert_encoding()

复制代码 代码如下:

 
<?php 
/* 转换内部编码为 SJIS */ 
$str = mb_convert_encoding($str, "SJIS"); 
 
/* 将 EUC-JP 转换成 UTF-7 */ 
$str = mb_convert_encoding($str, "UTF-7", "EUC-JP"); 
 
/* 从 JIS, eucjp-win, sjis-win 中自动检测编码,并转换 str 到 UCS-2LE */ 
$str = mb_convert_encoding($str, "UCS-2LE", "JIS, eucjp-win, sjis-win"); 
 
/* "auto" 扩展成 "ASCII,JIS,UTF-8,EUC-JP,SJIS" */ 
$str = mb_convert_encoding($str, "EUC-JP", "auto"); 
?> 

 

保险就用mb_conver_encoding 

时间: 2024-12-29 18:20:25

PHP中iconv函数转码时截断字符问题的解决方法_php技巧的相关文章

php生成二维码时出现中文乱码的解决方法_php技巧

本文实例讲述了php生成二维码时出现中文乱码的解决方法.分享给大家供大家参考.具体分析如下: 最近做了个扫描二维码得到vcard的项目,遇到一个问题,有一部分生成完的二维码,用android系统手机扫描后得到的vcard中的中文姓名是乱码,经过比对发现,这部分vcard中ORG这个类型没有内容,随即判断没内容就加上一个固定的字符串,这样乱码的问题得以解决. php生成二维码的几种方式 1.google开放api,代码如下: 复制代码 代码如下: $urlToEncode="http://www.

PHP使用json_encode函数时不转义中文的解决方法_php技巧

本文实例讲述了PHP使用json_encode函数时不转义中文的解决方法.分享给大家供大家参考.具体方法如下: json_encode函数对于gbk中的中文字符是不会转换的或直接转换成空格了,本文就来给各位整理一个关于json不转义中文问题处理技巧,相信对大家有所帮助. 如果你调用 PHP 自带的 json_encode() 函数, 碰到中文时, 中文会被转义掉. 例如: 复制代码 代码如下: echo json_encode(array('你好')); // 输出: ["\u4f60\u597

PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法_php技巧

本文实例讲述了PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法.分享给大家供大家参考.具体分析如下: PHP 连接 MSSQL 的新手经常遇到这个问题:数据库里面的 nvarchar 字段中数据一切正常,但是用 PHP 查询出来却发现长度只有 255,我们都知道,在 MySQL 里面 varchar 的长度只有 255,但是 MSSQL 却不是,不会是 PHP 将 nvarchar 按照 MySQL 的 varchar 处理了吧. 本文给出了解决方法: 复制代码 代码如下:

php中json_encode处理gbk与gb2312中文乱码问题的解决方法_php技巧

本文讲述了php中json_encode处理gbk与gb2312中文乱码问题的解决方法,具体方法如下: 1.json_encode()中文在gbk/gb2312中对中文返回为null $arr = array ( array ( 'catid' => '4', 'catname' => 'www.jb51.net', 'meta_title' => '' ) ); echo json_encode($arr); 运行结果: [{"catid":"4"

php使用escapeshellarg时中文被过滤的解决方法_php技巧

本文分析了php使用escapeshellarg时中文被过滤的解决方法.分享给大家供大家参考.具体如下: 一.问题: 同样的代码,发现通过 localhost/index.php 访问,和在 shell 中通过 php ./index.php 运行結果却不一样. 在程序中需要通过 shell_exec 来执行一个 linux 程序,而它的输入来自 echo ,即: shell_exec('echo '.escapeshellarg($str).' | some_cmd 2>&1'); 二.解

php采集时被封ip的解决方法_php技巧

在网上找了一些资料都没有找到,功夫不负有心人啊,在找的时侯有一个人提到了用搜索引擎爬虫蜘蛛的USERAGENT.虽然只提到一点点我还是想到了,列出我的解决方法, 1.使用Snoopy或curl传搜索引擎爬虫的USERAGENT值. 查看搜索引擎爬虫的USERAGENT值:http://www.jb51.net/yunying/29357.html 2.使用Snoopy或curl传referer值. 如:$snoopy->referer = 'http://www.google.com'; $he

PHP中使用sleep造成mysql读取失败的案例和解决方法_php技巧

近日,由于项目需求 需要用到sleep函数定时从数据库取一堆数据出来去执行某些操作. sleep等待的时间至少有一个小时以上 此前做过测试 用sleep函数去完成数小时后执行的操作是可行的   可邪门的问题出来了 程序用sleep后发现不能从数据库取到相应的信息 把sleep去掉 结果正常   郁闷中... 难道sleep影响读库操作!!! 于是为了方便测试 直接来个sleep(10) 十秒后执行 结果能从数据库读取信息   可为什么sleep()一个小时后不能读取信息呢? 为了测试方便我直接在

JSP中内建exception对象时出现500错误的解决方法_JSP编程

本文实例讲述了JSP中内建exception对象时出现500错误的解决方法.分享给大家供大家参考,具体如下: 尝试使用JSP的内建exception对象,写了下面三个文件.思路很简单,文件index若提交字串为空,则get抛出异常,交由error.jsp处理.但实际却不能正常运行,会出现IE的500错误页面.环境为Tomcat 5.5,IE6.0. 在sun的论坛上有人贴出了原因,是IE的某个设置.Tomcat5.0以后的版本error page在处理时会返回error code 500.而IE

ThinkPHP提交表单时默认自动转义的解决方法_php实例

本文实例讲述了ThinkPHP提交表单时默认自动转义的解决方法.分享给大家供大家参考.具体方法如下: 一.问题: 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线. 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线,在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不