Unicode与UTF-8字符相互转换

/**

* utf8字符转换成Unicode字符

*

* @param $utf8_str

* @return string

*/

function utf8_str_to_unicode($utf8_str) {

    $unicode = (ord($utf8_str[0]) & 0x1F) << 12;

    $unicode |= (ord($utf8_str[1]) & 0x3F) << 6;

    $unicode |= (ord($utf8_str[2]) & 0x3F);

    return dechex($unicode);

}


/**

* Unicode字符转换成utf8字符

*

* @param $unicode_str

* @return string

*/

function unicode_to_utf8($unicode_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;

}

推荐: 浮生无事的博客

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • UTF-8 编码提供了一种简便而向后兼容的方法, 使得那种完全围绕 ASCII 设计的操作系统, 比如 Unix,...
    谢大见阅读 10,283评论 0 3
  • 字符集和编码简介 在编程中常常可以见到各种字符集和编码,包括ASCII,MBCS,Unicode等字符集。确切的说...
    兰山小亭阅读 12,892评论 0 13
  • 个人笔记,方便自己查阅使用 Py.LangSpec.Contents Refs Built-in Closure ...
    freenik阅读 67,864评论 0 5
  • /**ios常见的几种加密方法: 普通的加密方法是讲密码进行加密后保存到用户偏好设置( [NSUserDefaul...
    彬至睢阳阅读 8,213评论 0 7
  • 妈的,真是的,论文不知道怎么的,今天修改的内容变不见了 只能用昨晚保存的内容重新修改
    遗忘了就遗忘呗阅读 2,256评论 0 0

友情链接更多精彩内容