在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
iconv("UTF-8","GB2312//IGNORE",$data) 1 <?php 2 echo $str= '你好,这里是卖咖啡!'; 3 echo '<br />'; 4 5 echo iconv('GB2312', 'UTF-8', $str); //将字符串的编码从GB2312转到UTF-8 6 echo '<br />'; 7 8 echo iconv_substr($str, 1, 1, 'UTF-8'); //按字符个数截取而非字节 9 print_r(iconv_get_encoding()); //得到当前页面编码信息 10 11 echo iconv_strlen($str, 'UTF-8'); //得到设定编码的字符串长度 12 13 14 15 //也有这样用的 16 17 $content = iconv("UTF-8","gbk//TRANSLIT",$content); 18 ?>
iconv不是php的默认函数,也是默认安装的模块。需要安装才能用的。 下载:ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.8.tar.gz 1 <?php 2 echo iconv("gb2312","ISO-8859-1","我们"); 3 ?>
PHP中的mb_convert_encoding与iconv函数介绍 mb_convert_encoding这个函数是用来转换编码的。原来一直对程序编码这一概念不理解,不过现在好像有点开窍了。 mb_convert_encoding的用法见官方: 做一个GBK To UTF-8 1 < ?php 2 header("content-Type: text/html; charset=Utf-8"); 3 echo mb_convert_encoding("妳係我的友仔", "UTF-8", "GBK"); 4 ?>
再来个GB2312 To Big5 1 < ?php 2 header("content-Type: text/html; charset=big5"); 3 echo mb_convert_encoding("你是我的朋友", "big5", "GB2312"); 4 ?>
不过要使用上面的函数需要安装但是需要先enable mbstring 扩展库。 PHP中的另外一个函数iconv也是用来转换字符串编码的,与上函数功能相似。 下面还有一些详细的例子: 用法:
发现iconv在转换字符”—”到gb2312时会出错,如果没有ignore参数,所有该字符后面的字符串都无法被保存。不管怎么样,这个”—”都无法转换成功,无法输出。 另外mb_convert_encoding没有这个bug. 一般情况下用 iconv,只有当遇到无法确定原编码是何种编码,或者iconv转化后无法正常显示时才用mb_convert_encoding 函数. 1 from_encoding is specified by character code name before conversion. it can be array or string - comma separated enumerated list. If it is not specified, the internal encoding will be used. 2 /* Auto detect encoding from JIS, eucjp-win, sjis-win, then convert str to UCS-2LE */ 3 $str = mb_convert_encoding($str, “UCS-2LE”, “JIS, eucjp-win, sjis-win”); 4 /* “auto” is expanded to “ASCII,JIS,UTF-8,EUC-JP,SJIS” */ 5 $str = mb_convert_encoding($str, “EUC-JP”, “auto”);
例子: 1 $content = iconv(”GBK”, “UTF-8″, $content); 2 $content = mb_convert_encoding($content, "UTF-8″,"GBK");
php中使用iconv函数时容易忽略的参数 特殊参数:iconv("UTF-8","GB2312//IGNORE",$data)
string iconv ( string in_charset, string out_charset, string str ) Performs a character set conversion on the string str from in_charset to out_charset. Returns the converted string or FALSE on failure. If you append the string //TRANSLIT to out_charset transliteration is activated. This means that when a character can't be represented in the target charset, it can be approximated through one or several similarly looking characters. If you append the string //IGNORE, characters that cannot be represented in the target charset are silently discarded. Otherwise, str is cut from the first illegal character. |
2022-07-29
2022-08-17
2022-11-06
2022-08-17
2022-08-16
请发表评论