汉字到UTF-8
iconv("GB2312","UTF-8",$text);
iconv("GBK","UTF-8",$text);UTF-8到汉字
iconv("UTF-8","GB2312",$text);
iconv("UTF-8","GBK",$text);
iconv("GB2312","UTF-8",$text);
iconv("GBK","UTF-8",$text);UTF-8到汉字
iconv("UTF-8","GB2312",$text);
iconv("UTF-8","GBK",$text);
$str = rawurldecode($str);
preg_match_all("/(?:%u.{4})|&#x.{4};|&#\d+;|.+/",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(substr($v,0,2) == "%u" && strlen($v) == 6)
$ar[$k] = iconv("UCS-2","GB2312",pack("H4",substr($v,-4)));
}
return join("",$ar);
}通常使用的unicode的ascii表示有三种
比如“合作”可以表示为:
合作
或
%u5408%u4f5c
或
合作参考:
function escape($str) {
preg_match_all("/[\x80-\xff].|[\x01-\x7f]+/",$str,$r);
$ar = $r[0];
foreach($ar as $k=>$v) {
if(ord($v[0]) < 128)
$ar[$k] = rawurlencode($v);
else
$ar[$k] = "%u".bin2hex(iconv("GB2312","UCS-2",$v));
}
return join("",$ar);
}
小弟先研究研究!
使用之后查看源代码还是编码。