php中文和unicode互转
unicode转中文时可以使用json_decode()函数实现。
中文转unicode时需要对字符串转换成UCS-4编码,再转成16进制,再从16进制转换成10进制加上&#前缀来实现中文转unicode编码。
一、unicode转中文
php
- <?php
- //unicode转中文
- function unicodeDecode($unicode_str){
- $json = ‘{"str":"‘.$unicode_str.‘"}‘;
- $arr = json_decode($json,true);
- if(empty($arr)) return ‘‘;
- return $arr[‘str‘];
- }
- $unicode_str = "\u4e2d\u56fd";
- echo unicodeDecode($unicode_str);
二、中文转unicode
php
- //中文转unicode
- function UnicodeEncode($str){
- //split word
- preg_match_all(‘/./u‘,$str,$matches);
- $unicodeStr = "";
- foreach($matches[0] as $m){
- //拼接
- $unicodeStr .= "&#".base_convert(bin2hex(iconv(‘UTF-8‘,"UCS-4",$m)),16,10);
- }
- return $unicodeStr;
- }
- $str = "新浪微博";
- echo UnicodeEncode($str);
相关推荐
86530296 2020-11-10
周游列国之仕子 2020-09-21
88540591 2020-06-16
89411051 2020-06-14
mjshldcsd 2020-06-14
88384957 2020-06-12
84590091 2020-06-08
88540591 2020-06-04
88540591 2020-06-01
81214051 2020-06-01
84590091 2020-05-03
81214051 2020-04-25
honghao0 2020-04-24
84590091 2020-04-22
85271041 2020-04-10
88384957 2020-03-27
85271041 2020-03-08