PHP将HTML转换成文本的实现代码


Posted in PHP onJanuary 21, 2015

核心代码:

<?php
// $document 应包含一个 HTML 文档。
// 本例将去掉 HTML 标记,javascript 代码
// 和空白字符。还会将一些通用的
// HTML 实体转换成相应的文本。

$search = array ("'<script[^>]*?>.*?</script>'si", // 去掉 javascript
         "'<[\/\!]*?[^<>]*?>'si",      // 去掉 HTML 标记
         "'([\r\n])[\s]+'",         // 去掉空白字符
         "'&(quot|#34);'i",         // 替换 HTML 实体
         "'&(amp|#38);'i",
         "'&(lt|#60);'i",
         "'&(gt|#62);'i",
         "'&(nbsp|#160);'i",
         "'&(iexcl|#161);'i",
         "'&(cent|#162);'i",
         "'&(pound|#163);'i",
         "'&(copy|#169);'i",
         "'&#(\d+);'e");          // 作为 PHP 代码运行

$replace = array ("",
         "",
         "\\1",
         "\"",
         "&",
         "<",
         ">",
         " ",
         chr(161),
         chr(162),
         chr(163),
         chr(169),
         "chr(\\1)");

$text = preg_replace ($search, $replace, $document);
?>
PHP 相关文章推荐
PHP调用三种数据库的方法(3)
Oct 09 PHP
如何在PHP中使用Oracle数据库(5)
Oct 09 PHP
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
Apr 02 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
Dec 06 PHP
PHP中call_user_func_array()函数的用法演示
Feb 05 PHP
Yii调试SQL的常用方法
Jul 09 PHP
ThinkPHP控制器里javascript代码不能执行的解决方法
Nov 22 PHP
PHP递归遍历指定目录的文件并统计文件数量的方法
Mar 24 PHP
laravel使用Faker数据填充的实现方法
Apr 12 PHP
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
May 28 PHP
mac pecl 安装php7.1扩展教程
Oct 17 PHP
PHP高并发和大流量解决方案整理
Dec 24 PHP
php使用Cookie控制访问授权的方法
Jan 21 #PHP
PHP+MySQL修改记录的方法
Jan 21 #PHP
PHP+MySQL删除操作实例
Jan 21 #PHP
PHP+MySQL插入操作实例
Jan 21 #PHP
php+mysql数据库查询实例
Jan 21 #PHP
php使用Cookie实现和用户会话的方法
Jan 21 #PHP
php实现遍历目录并删除指定文件中指定内容
Jan 21 #PHP
You might like
php+AJAX传送中文会导致乱码的问题的解决方法
2008/09/08 PHP
认识并使用PHP超级全局变量
2010/01/26 PHP
整理的9个实用的PHP库简介和下载
2010/11/09 PHP
php一行代码获取文件后缀名实例分析
2014/11/12 PHP
php等比例缩放图片及剪切图片代码分享
2016/02/13 PHP
javascript里的条件判断
2007/02/27 Javascript
javascript 一个自定义长度的文本自动换行的函数
2007/08/19 Javascript
jQuery当鼠标悬停时放大图片的效果实例
2013/07/03 Javascript
js中array的sort()方法使用介绍
2014/02/20 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
node.js中的socket.io的广播消息
2014/12/15 Javascript
javascript实现无限级select联动菜单
2015/01/02 Javascript
js实现分割上传大文件
2016/03/09 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
2016/10/30 Javascript
jQuery的时间datetime控件在AngularJs中的使用实例(分享)
2017/08/17 jQuery
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
js字符串倒序的实例代码
2018/11/30 Javascript
vue中轮训器的使用
2019/01/27 Javascript
解决Vue项目中tff报错的问题
2020/10/21 Javascript
一个超级简单的python web程序
2014/09/11 Python
决策树的python实现方法
2014/11/18 Python
Python实现使用卷积提取图片轮廓功能示例
2018/05/12 Python
解决pycharm安装后代码区不能编辑的问题
2018/10/28 Python
Django Sitemap 站点地图的实现方法
2019/04/29 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
2019/08/12 Python
Pycharm 使用 Pipenv 新建的虚拟环境(图文详解)
2020/04/16 Python
python-地图可视化组件folium的操作
2020/12/14 Python
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
为什么在使用动态 SQL 语句时必须为低层数据库对象授予权限
2012/12/13 面试题
英语专业学生个人求职信范文
2014/01/06 职场文书
民族学专业大学生职业规划范文:清晰未来的构想
2014/09/20 职场文书
婚宴来宾致辞
2015/07/28 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
校园安全教育心得体会
2016/01/15 职场文书
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis
Python开发工具Pycharm的安装以及使用步骤总结
2021/06/24 Python