php 文字转unicode,php汉字如何转unicode
php汉字转unicode的方法:首先创建PHP示例代码文件;然后定义一个“unicode_encode”方法;接着再创建一个“unicode_decode”方法;最后通过定义好的方法进行转换即可。
php汉字转unicode
php汉字转Unicode编码函数/**
* $str 原始字符串
* $encoding 原始字符串的编码,默认GBK
* $prefix 编码后的前缀,默认""
* $postfix 编码后的后缀,默认";"
*/
function unicode_encode($str, $encoding = 'GBK', $prefix = '', $postfix = ';') {
$str = iconv($encoding, 'UCS-2', $str);
$arrstr = str_split($str, 2);
$unistr = '';
for($i = 0, $len = count($arrstr); $i < $len; $i++) {
$dec = hexdec(bin2hex($arrstr[$i]));
$unistr .= $prefix . $dec . $postfix;
}
return $unistr;
}
/**
* $str Unicode编码后的字符串
* $encoding 原始字符串的编码,默认GBK
* $prefix 编码字符串的前缀,默认""
* $postfix 编码字符串的后缀,默认";"
*/
function unicode_decode($unistr, $encoding = 'GBK', $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);
}
使用://GBK字符串测试
$str = '哈哈';
echo $str.'
';
$unistr = unicode_encode($str);
echo $unistr.'
'; // <b>哈哈</b>
$str2 = unicode_decode($unistr);
echo $str2.'
'; //哈哈
//UTF-8字符串测试
$utf8_str = iconv('GBK', 'UTF-8', $str);
echo $utf8_str.'
'; // 鍝堝搱 注:UTF在GBK下显示的乱码!可切换浏览器的编码测试
$utf8_unistr = unicode_encode($utf8_str, 'UTF-8');
echo $utf8_unistr.'
'; // <b>哈哈</b>
$utf8_str2 = unicode_decode($utf8_unistr, 'UTF-8');
echo $utf8_str2.'
'; // 鍝堝搱
//其它后缀、前缀测试
$prefix_unistr = unicode_encode($str, 'GBK', "\\u", '');
echo $prefix_unistr.'
'; // \u60\u98\u62\u21704\u21704\u60\u47\u98\u62
$profix_unistr2 = unicode_decode($prefix_unistr, 'GBK', "\\u", '');
echo $profix_unistr2.'
'; //哈哈
推荐:《PHP教程》
php 文字转unicode,php汉字如何转unicode相关推荐
- 汉字在线转化unicode编码
http://www.bangnishouji.com/tools/chtounicode.htm 汉字转化unicode编码 欢迎使用汉字转化unicode编码工具,此程序将一段中文字转换成unic ...
- 从程序员的观点看 汉字国标与Unicode
工作中时常接触到一些于编码相关的术语,比如ASCII,Unicode,UTF-8,UTF-16 ,UTF-32,在C++编程中经常会遇到char,wchar_t,std::string,std::ws ...
- 汉字转16进制java_java实现汉字转unicode与汉字转16进制实例
本文实例讲述了java实现汉字转unicode与汉字转16进制的实现方法.分享给大家供大家参考.具体实现方法如下: 一.汉字转unicode public static String toUnicod ...
- C#_汉字与GBK,Unicode,UTF-8编码之间的转换
IT发展至今,字符编码版本众多,目前流行的GBK,Unicode,UTF-8编码与汉字的转换可用如下代码: private void button1_Click(object sender, Even ...
- java 16进制与汉字_java实现汉字转unicode与汉字转16进制实例
本文实例讲述了java实现汉字转unicode与汉字转16进制的实现方法.分享给大家供大家参考.具体实现方法如下: 一.汉字转unicode public static string tounicod ...
- PHP高性能输出UNICODE正则汉字列表 汉字转拼音多音字解决方案 搜索引擎分词细胞词库更新 搜狗词库提取TXT...
为什么80%的码农都做不了架构师?>>> 目前现状 汉字转拼音 难度大就大在 多音字!行业上较准确的是基于词语.成语的识别.搜狗有1万多词库 每个词库又很大: 比如: 了 我们 ...
- 汉字对应的unicode编码
在Java中采用unicode字符集,每个字符占据2个字节,unicode字符集最多可包含65 535个字符. 65 535是一个很大的数字,英文字母.俄文字母.希腊字母.日文字母.阿拉伯数字.标点符 ...
- Unicode对汉字的编码
1 unicode编码表 Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个字符, 比如汉字"经"的编码是0x7ECF,注意字符编码一般用十六进制来 表示,为了与十进 ...
- Unicode对汉字的编码 1
1 unicode编码表 Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个字符, 比如汉字"经"的编码是0x7ECF,注意字符编码一般用十六进制来 表示,为了与十进 ...
最新文章
- 阅读Book: MultiObjective using Evolutionary Algorithms (4) --- 3 种方法find Non-dominated set
- ORACLE 中为什么要把列名都转换成大写字母?
- 特别完善的面试知识总结
- icem网格划分如何给内部面网格_icem结构化网格划分 ICEM里面设置一下就可以自动划分网格,为什么要用块?...
- linux加密框架 crypto 算法crypto_register_alg的注册流程
- MindSpore手写数字识别初体验,深度学习也没那么神秘嘛
- Jquery中用offset().top和offsetTop的比较
- 2016012013 王雪 散列函数的应用及其安全性
- 记tcp网络编程中遇到的readline()方法
- linux手机刷机包制作工具_安卓10刷机包
- 随机森林算法的扩展-深度森林(deep forest)
- oracle查询时使用case,Oracle查询语句中Casewhen的使用
- java毕业设计 - vue外卖的点餐系统
- N沟道与P沟道增强型MOS管电压、原理、导通条件!
- 【黑灰产犯罪研究】DDOS攻击
- dirver时区_时区问题
- RPLIDAR思岚雷达学习记录--6--matlab处理雷达数据
- mysql自定义函数获取表中多个值的方法
- 崔发周 教育部计算机,高等职业技术教育人才培养目标体系及其构建_崔发周
- flink增量读文本数据
热门文章
- 去掉最高分最低分求平均分
- 如何消除图片锯齿 html,Html5 canvas drawImage图片抗锯齿
- pandoc下载 - 文档格式转换器
- error: src refspec master does not match any. 错误的解决办法
- 计算机管理服务报错mmc,mmc错误,注册表没有mmc
- android MDE工程师,Android Application Addon(插件) 架构及管理
- [转]最速下降曲线:重力场中两点之间曲线更快
- SAP 中Table的使用(一、显示数据)
- 《C++ Concurrency in Action》笔记28 无锁并行数据结构
- word文档可以打开但显示乱码的完全解决攻略