本文目录一览:
- 1、怎么用PHP把unicode转成utf8
- 2、php中把汉字转换成unicode方法
- 3、PHP UNICODE 编码转换
- 4、php 如何将unicode码转换成汉字
- 5、php json_encode使用中文不转码
怎么用PHP把unicode转成utf8
mb_convert_encoding
(PHP 4 = 4.0.6, PHP 5, PHP 7)
mb_convert_encoding — 转换字符的编码
说明
string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding = mb_internal_encoding() ] )-php转码unicode
将 string 类型 str 的字符编码从可选的 from_encoding 转换到 to_encoding。
$txt = mb_convert_encoding( $txt , 'UTF-8' , 'UCS-2');
php中把汉字转换成unicode方法
把那个hidemail函数改改不就行了。。 ?php //将utf8编码的汉字转换为unicode function htou($c){ $n = (ord($c[0]) 0x1f) 12; $n += (ord($c[1]) 0x3f) 6; $n += ord($c[2]) 0x3f; return $n; } //在代码中隐藏utf8格式的字符串 function my_utf8_unicode($str) { $encode=''; for($i=0;$istrlen($str);$i++){ if(ord(substr($str,$i,1)) 0xa0){ $encode.=''.htou(substr($str,$i,3)).';'; $i+=2; }else{ $encode.=''.ord($str[$i]).';'; } } return $encode; } echo my_utf8_unicode("哈哈ABC"); ?-php转码unicode
PHP UNICODE 编码转换
Unicode是一个字符集,Unicode是定长的都为双字节.
这里我们常用的是utf8字符集编码,楼主是说的Unicode转换为UTF-8吧。
/**
* Unicode字符转换成utf8字符
* @param [type] $unicode_str Unicode字符
* @return [type] Utf-8字符
*/
function unicode_to_utf8($unicode_str) {
$utf8_str = '';
$code = intval(hexdec($unicode_str));
//这里注意转换出来的code一定得是整形,这样才会正确的按位操作
$ord_1 = decbin(0xe0 | ($code 12));
$ord_2 = decbin(0x80 | (($code 6) 0x3f));
$ord_3 = decbin(0x80 | ($code 0x3f));
$utf8_str = chr(bindec($ord_1)) . chr(bindec($ord_2)) . chr(bindec($ord_3));
return $utf8_str;
}
php 如何将unicode码转换成汉字
$str = '$d=[{"_id":{"$id":"4fda7d42741d727c14000000"},"name":"\u519c\u592b\u5c71\u6cc9","bc":"123456","pic":"d: pic\water.jpg","aid":"232fd4df3"}]-php转码unicode
$c=[{"_id":{"$id":"4fdaa7f3741d725816000000"},"bc":"012345678","name":"\u7ef4\u8fbe\u7eb8\u5dfe","cls":{"id":"125","name":"\u65e5\u7528\u54c1"},"std":{"name":"\u5f20\u6570","val":"10"}}]';-php转码unicode
$str=preg_replace("#\\\u([0-9a-f]{4})#ie", "iconv('UCS-2BE', 'UTF-8', pack('H4', '\\1'))", $str);
echo $str;
乱码的话记得换下浏览器编码。....
php json_encode使用中文不转码
PHP转JSON,中文会被转码成unicode,使用常量 JSON_UNESCAPED_UNICODE 可以使中文原样输入。
不使用 JSON_UNESCAPED_UNICODE
使用 JSON_UNESCAPED_UNICODE
Json在 5.4 还加入了: JSON_BIGINT_AS_STRING , JSON_PRETTY_PRINT , JSON_UNESCAPED_SLASHES 等选项, 如果有兴趣, 大家可以参看: json_encode-php转码unicode
其中有2个比较常用到的参数
JSON_UNESCAPED_UNICODE (中文不转为unicode ,对应的数字 256)
JSON_UNESCAPED_SLASHES (不转义反斜杠,对应的数字 64)
通常json_encode只能传入一个常量,如果同时使用2个常量怎么办?
JSON_UNESCAPED_UNICODE + JSON_UNESCAPED_SLASHES = 320
使用方法:json_encode($arr,320);即可完成同时使用2个常量。
PHP5.4才支持 JSON_UNESCAPED_UNICODE 这个参数,此参数是让中文字符在json_encode的时候不用转义,减少数据传输量。