全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

PHP实现Unicode编码相互转换的方法示例

本文实例讲述了PHP实现Unicode编码相互转换的方法。分享给大家供大家参考,具体如下:

<?php
/**
* $str 原始中文字符串
* $encoding 原始字符串的编码,默认utf-8
* $prefix 编码后的前缀,默认"&#"
* $postfix 编码后的后缀,默认";"
*/
function unicode_encode($str, $encoding = 'utf-8', $prefix = '&#', $postfix = ';') {
 //将字符串拆分
 $str = iconv("UTF-8", "gb2312", $str);
 $cind = 0;
 $arr_cont = array();
 for ($i = 0; $i < strlen($str); $i++) {
 if (strlen(substr($str, $cind, 1)) > 0) {
  if (ord(substr($str, $cind, 1)) < 0xA1) { //如果为英文则取1个字节
  array_push($arr_cont, substr($str, $cind, 1));
  $cind++;
  } else {
  array_push($arr_cont, substr($str, $cind, 2));
  $cind+=2;
  }
 }
 }
 foreach ($arr_cont as &$row) {
 $row = iconv("gb2312", "UTF-8", $row);
 }
 //转换Unicode码
 foreach ($arr_cont as $key => $value) {
 $unicodestr.= $prefix . base_convert(bin2hex(iconv('utf-8', 'UCS-4', $value)), 16, 10) .$postfix;
 }
 return $unicodestr;
}
/**
* $str Unicode编码后的字符串
* $decoding 原始字符串的编码,默认utf-8
* $prefix 编码字符串的前缀,默认"&#"
* $postfix 编码字符串的后缀,默认";"
*/
function unicode_decode($unistr, $encoding = 'utf-8', $prefix = '&#', $postfix = ';') {
 $arruni = explode($prefix, $unistr);
 $unistr = '';
 for ($i = 1, $len = count($arruni); $i < $len; $i++) {
 if (strlen($postfix) > 0) {
  $arruni[$i] = substr($arruni[$i], 0, strlen($arruni[$i]) - strlen($postfix));
 }
 $temp = intval($arruni[$i]);
 $unistr .= ($temp < 256) ? chr(0) . chr($temp) : chr($temp / 256) . chr($temp % 256);
 }
 return iconv('UCS-2', $encoding, $unistr);
}
$str = "PHP编程:www.";
$unistr = unicode_encode($str);
$unistr2 = unicode_decode($unistr);
echo $unistr . '<br />';
echo $unistr2 . '<br />';
$unistr = unicode_encode($str,'GBK','\\u');
$unistr2 = unicode_decode($unistr,'GBK','\\u');
echo $unistr . '<br />';
echo $unistr2 . '<br />';

PS:下面测试过这个函数比较好用,该代码需要在utf-8编码环境下运行

function unicode_encode($name) {//Unicode编码
 $jsonarr = array($name);
 $jsonstr = json_encode($jsonarr);
 if (empty ($jsonstr))
 return '';
 return substr($jsonstr,2,-2);
}
function unicode_decode($name) {//Unicode解码

 $json = '{"str":"' . $name . '"}';
 $arr = json_decode($json, true);
 if (empty ($arr))
 return '';
 return $arr['str'];

}

$test = "\u811a\u672c\u4e4b\u5bb6";
echo "unicode解码:".unicode_decode($test)."<br/>";
echo "unicode编码:".unicode_encode('')."<br/>";

PS:这里再为大家提供几款Unicode编码转换操作相关工具供大家参考使用:

在线Unicode/中文转换工具:
http://tools./transcoding/unicode_chinese

Native/Unicode在线编码转换工具:
http://tools./transcoding/native2unicode

在线中文汉字/ASCII码/Unicode编码互相转换工具:
http://tools./transcoding/chinese2unicode

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP编码与转码操作技巧汇总》、《php面向对象程序设计入门教程》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# PHP  # Unicode编码  # 转换  # Python3的unicode编码转换成中文的问题及解决方案  # js字符串与Unicode编码互相转换  # python实现unicode转中文及转换默认编码的方法  # JS实现的Unicode编码转换操作示例  # .Net(c#)汉字和Unicode编码互相转换实例  # C#将Unicode编码转换为汉字字符串的简单方法  # JavaScript中字符串与Unicode编码互相转换的实现方法  # PHP如何实现Unicode和Utf-8编码相互转换  # js unicode 编码解析关于数据转换为中文的两种方法  # C++11 Unicode编码转换  # 程序设计  # 转换工具  # 操作技巧  # 相关内容  # 感兴趣  # 数据结构  # 英文  # 给大家  # 好用  # 更多关于  # 所述  # 几款  # 面向对象  # 再为  # 讲述了  # 正则表达式  # ord  # foreach  # array_push  # string 


相关文章: 韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  无锡营销型网站制作公司,无锡网选车牌流程?  如何通过WDCP绑定主域名及创建子域名站点?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  平台云上自助建站如何快速打造专业网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  建站之星IIS配置教程:代码生成技巧与站点搭建指南  视频网站app制作软件,有什么好的视频聊天网站或者软件?  制作宣传网站的软件,小红书可以宣传网站吗?  平台云上自主建站:模板化设计与智能工具打造高效网站  北京网站制作公司哪家好一点,北京租房网站有哪些?  制作网站外包平台,自动化接单网站有哪些?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  高端网站建设与定制开发一站式解决方案 中企动力  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  如何在云主机上快速搭建网站?  如何高效生成建站之星成品网站源码?  上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?  网站制作知乎推荐,想做自己的网站用什么工具比较好?  济南企业网站制作公司,济南社保单位网上缴费步骤?  如何在IIS中新建站点并配置端口与IP地址?  如何用低价快速搭建高质量网站?  php条件判断怎么写_ifelse和switchcase的使用区别【对比】  淘宝制作网站有哪些,淘宝网官网主页?  网站按钮制作软件,如何实现网页中按钮的自动点击?  如何基于PHP生成高效IDC网络公司建站源码?  定制建站模板如何实现SEO优化与智能系统配置?18字教程  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  常州自助建站工具推荐:低成本搭建与模板选择技巧  ppt制作免费网站有哪些,ppt模板免费下载网站?  建站之星2.7模板快速切换与批量管理功能操作指南  C#如何使用XPathNavigator高效查询XML  如何用美橙互联一键搭建多站合一网站?  专业网站建设制作报价,网页设计制作要考什么证?  如何快速查询网址的建站时间与历史轨迹?  南京网站制作费用,南京远驱官方网站?  如何在阿里云服务器自主搭建网站?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  如何将凡科建站内容保存为本地文件?  中山网站推广排名,中山信息港登录入口?  建站之星伪静态规则如何正确配置?  企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?  ,怎么在广州志愿者网站注册?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  建站之星3.0如何解决常见操作问题?  盐城做公司网站,江苏电子版退休证办理流程?  整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?  行程制作网站有哪些,第三方机票电子行程单怎么开?  深圳企业网站制作设计,在深圳如何网上全流程注册公司? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。