本文共 835 字,大约阅读时间需要 2 分钟。
经常的写中文出现乱码,用编码器翻译在粘上去,有的还翻译不过去。还是用翻译函数吧:
gb2312转换成utf-8
$utf=iconv('GB2312', 'UTF-8', $_REQUEST['keyword']);
将字符串utf-8码转换为gb2312码
$str = iconv("UTF-8","GB2312//TRANSLIT",$str);
PHP编码转换函数
iconv() 函数 Definition and Usage 定义和用法 iconv()函数的作用是:转换字符串的编码。
Description string iconv ( string in_charset, string out_charset, string str )
Tips and Notes 注意点注意:第二个参数,除了可以指定要转化到的编码以外,还可以增加两个后缀://TRANSLIT 和 //IGNORE,其中 //TRANSLIT 会自动将不能直接转化的字符变成一个或多个近似的字符,//IGNORE 会忽略掉不能转化的字符,而默认效果是从第一个非法字符截断。
mb_convert_encoding() 函数 Definition and Usage 定义和用法 mb_convert_encoding()函数的作用是:转换字符串的编码。
Description string mb_convert_encoding ( string str, string to-encoding [, mixed from-encoding])
注意:但是需要先enable mbstring 扩展库。两者区别:mb_convert_encoding 中根据内容自动识别编码;mb_convert_encoding功能强大,但是执行效率比iconv差太多;
总结:一般情况下用 iconv,只有当遇到无法确定原编码是何种编码时才用 mb_convert_encoding 函数.
转载地址:http://kedli.baihongyu.com/