php中将字符串转为HTML的实体引用的一个类


Posted in PHP onFebruary 03, 2013
class HtmlEncode { 
        static $_convertToHtmlEntitiesSrcEncoding='UTF-8';         /**
         * 将非ASCII字符串转换成HTML实体
         *
         * @example HtmlEncode::encode("我信了"); //输出:我信了
         * @param string $s 要进行编码的字符串
         * @return string 返回HTML实体引用
         */ 
        public static function encode($s,$srcEncoding='UTF-8') { 
            self::$_convertToHtmlEntitiesSrcEncoding=$srcEncoding; 
            return preg_replace_callback('|[^\x00-\x7F]+|',array(__CLASS__,'_convertToHtmlEntities'),$s); 
        } 
        public static function _convertToHtmlEntities($data) { 
            if (is_array($data)) { 
                $chars=str_split(iconv(self::$_convertToHtmlEntitiesSrcEncoding,"UCS-2BE",$data[0]),2); 
                $chars=array_map(array(__CLASS__,__FUNCTION__),$chars); 
                return join("",$chars); 
            } else { 
                $code=hexdec(sprintf("%02s%02s;",dechex(ord($data {0})),dechex(ord($data {1})))); 
                return sprintf("&#%s;",$code); 
            } 
        }      
    }
PHP 相关文章推荐
手把手教你使用DedeCms V3的在线采集图文教程
Apr 03 PHP
PHP 操作文件的一些FAQ总结
Feb 12 PHP
Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码
Apr 07 PHP
完美解决令人抓狂的zend studio 7代码提示(content Assist)速度慢的问题
Jun 20 PHP
php修改文件上传限制方法汇总
Apr 07 PHP
ecshop适应在PHP7的修改方法解决报错的实现
Nov 01 PHP
[原创]PHPCMS遭遇会员投稿审核无效的解决方法
Jan 11 PHP
php+redis实现多台服务器内网存储session并读取示例
Jan 12 PHP
thinkphp分页集成实例
Jul 24 PHP
实例介绍PHP中zip_open()函数用法
Feb 15 PHP
PHP 观察者模式深入理解与应用分析
Sep 25 PHP
基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作
Aug 17 PHP
php处理文件的小例子(解压缩,删除目录)
Feb 03 #PHP
php函数array_merge用法一例(合并同类数组)
Feb 03 #PHP
php存储过程调用实例代码
Feb 03 #PHP
php中导出数据到excel时数字变为科学计数的解决方法
Feb 03 #PHP
php中删除字符串中最先出现某个字符的实现代码
Feb 03 #PHP
php数组去重的函数代码
Feb 03 #PHP
php中使用临时表查询数据的一个例子
Feb 03 #PHP
You might like
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
2011/11/07 PHP
thinkPHP+ajax实现统计页面pv浏览量的方法
2017/03/15 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
jquery DOM操作 基于命令改变页面
2010/05/06 Javascript
深入Javascript函数、递归与闭包(执行环境、变量对象与作用域链)使用详解
2013/05/08 Javascript
JavaScript 命名空间 使用介绍
2013/08/29 Javascript
用js传递value默认值的示例代码
2014/09/11 Javascript
基于jquery编写分页插件
2016/03/07 Javascript
Node.js文件操作方法汇总
2016/03/22 Javascript
js动态添加的DIV中的onclick事件简单实例
2016/07/25 Javascript
用jQuery.ajaxSetup实现对请求和响应数据的过滤
2016/12/20 Javascript
vue监听滚动事件实现滚动监听
2017/04/11 Javascript
基于JavaScript实现多级菜单效果
2017/07/25 Javascript
React Native 真机断点调试+跨域资源加载出错问题的解决方法
2018/01/18 Javascript
jQuery实现定时隐藏对话框的方法分析
2018/02/12 jQuery
vue cli2.0单页面title修改方法
2018/06/07 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
Node.js设置定时任务之node-schedule模块的使用详解
2020/04/28 Javascript
Vue 使用iframe引用html页面实现vue和html页面方法的调用操作
2020/11/16 Javascript
Python中字典(dict)和列表(list)的排序方法实例
2014/06/16 Python
python解决方案:WindowsError: [Error 2]
2016/08/28 Python
python dataframe NaN处理方式
2019/12/26 Python
python如何删除文件、目录
2020/06/23 Python
详解三种方式实现平滑滚动页面到顶部的功能
2019/04/23 HTML / CSS
高中的自我鉴定
2013/12/16 职场文书
小学庆六一活动方案
2014/02/28 职场文书
大学生新学期计划书
2014/04/28 职场文书
小学阳光体育活动总结
2014/07/05 职场文书
2014年党员评议表自我评价
2014/09/27 职场文书
科学发展观标语
2014/10/08 职场文书
党员观看《筑梦中国》心得体会
2016/01/18 职场文书
60句有关成长的名言
2019/09/04 职场文书
html5中sharedWorker实现多页面通信的示例代码
2021/05/07 Javascript
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python
nginx容器方式反向代理实战
2022/04/18 Servers
SpringBoot详解自定义Stater的应用
2022/07/15 Java/Android