php实现utf-8转unicode函数分享


Posted in PHP onJanuary 06, 2015

代码很简单,功能却很实用,推荐给大家。

奉上代码先:

public function utf8_unicode($str) {

    $unicode = array();

    $values = array();

    $lookingFor = 1;

    for ($i = 0; $i < strlen( $str ); $i++ ) {

        $thisValue = ord( $str[ $i ] );

        if ( $thisValue < ord('A') ) {

            // exclude 0-9

            if ($thisValue >= ord('0') && $thisValue <= ord('9')) {

                 // number

                 $unicode[] = chr($thisValue);

            }

            else {

                 $unicode[] = '%'.dechex($thisValue);

            }

        } else {

            if ( $thisValue < 128) {

                $unicode[] = $str[ $i ];

            } else {

                if ( count( $values ) == 0 ) {

                    $lookingFor = ( $thisValue < 224 ) ? 2 : 3;

                }

                $values[] = $thisValue;

                if ( count( $values ) == $lookingFor ) {

                    $number = ( $lookingFor == 3 ) ?

                        ( ( $values[0] % 16 ) * 4096 ) + ( ( $values[1] % 64 ) * 64 ) + ( $values[2] % 64 ):

                        ( ( $values[0] % 32 ) * 64 ) + ( $values[1] % 64 );

                    $number = dechex($number);

                    $unicode[] = (strlen($number)==3)?"\u0".$number:"\u".$number;

                    $values = array();

                    $lookingFor = 1;

                } // if

            } // if

        }

    } // for

    return implode("",$unicode);

}
PHP 相关文章推荐
自己前几天写的无限分类类
Feb 14 PHP
PHP小程序自动提交到自助友情连接
Nov 24 PHP
在PHP上显示JFreechart画的统计图方法
Nov 03 PHP
php返回字符串中所有单词的方法
Mar 09 PHP
通过Email发送PHP错误的方法
Jul 20 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
Jan 07 PHP
PHP文件操作之获取目录下文件与计算相对路径的方法
Jan 08 PHP
php 实现进制相互转换
Apr 07 PHP
php基于CodeIgniter实现图片上传、剪切功能
May 14 PHP
php封装单文件上传到数据库(路径)
Oct 15 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
Apr 02 PHP
windows中为php安装mongodb与memcache
Jan 06 #PHP
phpQuery让php处理html代码像jQuery一样方便
Jan 06 #PHP
php基于表单密码验证与HTTP验证用法实例
Jan 06 #PHP
php使用fputcsv()函数csv文件读写数据的方法
Jan 06 #PHP
phplot生成图片类用法详解
Jan 06 #PHP
写一段简单的PHP建立文件夹代码
Jan 06 #PHP
php读取flash文件高宽帧数背景颜色的方法
Jan 06 #PHP
You might like
PHP 和 MySQL 基础教程(三)
2006/10/09 PHP
使用php来实现网络服务
2009/09/15 PHP
初识PHP
2014/09/28 PHP
使用PHP连接多种数据库的实现代码(mysql,access,sqlserver,Oracle)
2016/12/21 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
PHP简单验证码功能机制实例详解
2019/03/27 PHP
php+js实现的无刷新下载文件功能示例
2019/08/23 PHP
TopList标签和JavaScript结合两例
2007/08/12 Javascript
fckeditor粘贴Word时弹出窗口取消的方法
2014/10/30 Javascript
JQuery实现的图文自动轮播效果插件
2015/06/19 Javascript
jQuery实现的页面遮罩层功能示例【测试可用】
2017/10/14 jQuery
vue Element-ui input 远程搜索与修改建议显示模版的示例代码
2017/10/19 Javascript
vue addRoutes实现动态权限路由菜单的示例
2018/05/15 Javascript
JS实现移动端触屏拖拽功能
2018/07/31 Javascript
JavaScript使用小插件实现倒计时的方法讲解
2019/03/11 Javascript
微信小程序常用的3种提示弹窗实现详解
2019/09/19 Javascript
解决layui动态添加的元素click等事件触发不了的问题
2019/09/20 Javascript
vue-cli脚手架的.babelrc文件用法说明
2020/09/11 Javascript
uniapp开发小程序实现滑动页面控制元素的显示和隐藏效果
2020/12/10 Javascript
py2exe 编译ico图标的代码
2013/03/08 Python
python生成随机mac地址的方法
2015/03/16 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
2016/05/05 Python
python strip() 函数和 split() 函数的详解及实例
2017/02/03 Python
Python文件操作之合并文本文件内容示例代码
2017/09/19 Python
实例讲解python中的序列化知识点
2018/10/08 Python
python中yield的用法详解——最简单,最清晰的解释
2019/04/04 Python
对django后台admin下拉框进行过滤的实例
2019/07/26 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
2019/10/30 Python
TensorFlow tensor的拼接实例
2020/01/19 Python
详解pandas赋值失败问题解决
2020/11/29 Python
html5关于外链嵌入页面通信问题(postMessage解决跨域通信)
2020/07/20 HTML / CSS
交通事故协议书范文
2014/10/23 职场文书
教师见习总结范文
2015/06/23 职场文书
Python包管理工具pip的15 个使用小技巧
2021/05/17 Python
python自动化测试通过日志3分钟定位bug
2021/11/20 Python
解决 redis 无法远程连接
2022/05/15 Redis