mb_convert_encoding使用举例

mb_convert_encoding函数功能非常强大,如果你能够知道一种字符的编码格式,基本上都可以转换成utf-8格式。

mb_convert_encoding — 转换字符的编码
string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding = mb_internal_encoding() ] )

str 			要编码的 string。
to_encoding 	str要转换成的编码类型。
from_encoding   在转换前通过字符代码名称来指定。它可以是一个 array 也可以是逗号分隔的枚举列表。 如果没有提供 from_encoding,则会使用内部(internal)编码。

支持的编码:
    UCS-4*
    UCS-4BE
    UCS-4LE*
    UCS-2
    UCS-2BE
    UCS-2LE
    UTF-32*
    UTF-32BE*
    UTF-32LE*
    UTF-16*
    UTF-16BE*
    UTF-16LE*
    UTF-7
    UTF7-IMAP
    UTF-8*
    ASCII*
    EUC-JP*
    SJIS*
    eucJP-win*
    SJIS-win*
    ISO-2022-JP
    ISO-2022-JP-MS
    CP932
    CP51932
    SJIS-mac** (别名: MacJapanese)
    SJIS-Mobile#DOCOMO** (别名: SJIS-DOCOMO)
    SJIS-Mobile#KDDI** (别名: SJIS-KDDI)
    SJIS-Mobile#SOFTBANK** (别名: SJIS-SOFTBANK)
    UTF-8-Mobile#DOCOMO** (别名: UTF-8-DOCOMO)
    UTF-8-Mobile#KDDI-A**
    UTF-8-Mobile#KDDI-B** (别名: UTF-8-KDDI)
    UTF-8-Mobile#SOFTBANK** (别名: UTF-8-SOFTBANK)
    ISO-2022-JP-MOBILE#KDDI** (别名: ISO-2022-JP-KDDI)
    JIS
    JIS-ms
    CP50220
    CP50220raw
    CP50221
    CP50222
    ISO-8859-1*
    ISO-8859-2*
    ISO-8859-3*
    ISO-8859-4*
    ISO-8859-5*
    ISO-8859-6*
    ISO-8859-7*
    ISO-8859-8*
    ISO-8859-9*
    ISO-8859-10*
    ISO-8859-13*
    ISO-8859-14*
    ISO-8859-15*
    byte2be
    byte2le
    byte4be
    byte4le
    BASE64
    HTML-ENTITIES
    7bit
    8bit
    EUC-CN*
    CP936
    GB18030**
    HZ
    EUC-TW*
    CP950
    BIG-5*
    EUC-KR*
    UHC (CP949)
    ISO-2022-KR
    Windows-1251 (CP1251)
    Windows-1252 (CP1252)
    CP866 (IBM866)
    KOI8-R*

示例代码:

<?php
header("Content-type: text/html; charset=utf-8");

//测试mb_convert_encoding函数将HTML-ENTITIES转换为utf8格式
$str = "web 前端高级开发工程师";
echo mb_convert_encoding($str, 'UTF-8', 'HTML-ENTITIES');
echo "<br/>";

//测试mb_convert_encoding与iconv的utf8转换为GBK
$data = "你好世界";

$str1 = mb_convert_encoding($data, "GBK", "UTF-8");
$str2 = iconv("UTF-8","GB2312//IGNORE",$data);

if($str1==$str2){
	echo "转换之后的字符相同<br/>";	
}

//测试mb_convert_encoding与iconv的GBK转换为utf8

$str3 = mb_convert_encoding($str1, "UTF-8", "GBK");
$str4 = iconv("GB2312","UTF-8//IGNORE",$str2);

if($str3==$str4){
	echo "转换之后的字符相同<br/>";
	echo "逆向转换之后的字符是:".$str3."<br/>";
}


//测试base64与mb_convert_encoding转换
$str5 = base64_encode("你好,世界");
echo mb_convert_encoding($str5, "UTF-8", "BASE64");

?>


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

e421083458

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值