PHP过滤各种HTML标签的表达式,值得收藏
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
$str =preg_replace( "/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i" , " " , $str ); //过滤img标签 $str =preg_replace( "/\s+/" , " " , $str ); //过滤多余回车 $str =preg_replace( "/<[ ]+/si" , "<" , $str ); //过滤<__("<"号后面带空格) $str =preg_replace( "/<\!--.*?-->/si" , "" , $str ); //注释 $str =preg_replace( "/<(\!.*?)>/si" , "" , $str ); //过滤DOCTYPE $str =preg_replace( "/<(\/?html.*?)>/si" , "" , $str ); //过滤html标签 $str =preg_replace( "/<(\/?head.*?)>/si" , "" , $str ); //过滤head标签 $str =preg_replace( "/<(\/?meta.*?)>/si" , "" , $str ); //过滤meta标签 $str =preg_replace( "/<(\/?body.*?)>/si" , "" , $str ); //过滤body标签 $str =preg_replace( "/<(\/?link.*?)>/si" , "" , $str ); //过滤link标签 $str =preg_replace( "/<(\/?form.*?)>/si" , "" , $str ); //过滤form标签 $str =preg_replace( "/cookie/si" , "COOKIE" , $str ); //过滤COOKIE标签 $str =preg_replace( "/<(applet.*?)>(.*?)<(\/applet.*?)>/si" , "" , $str ); //过滤applet标签 $str =preg_replace( "/<(\/?applet.*?)>/si" , "" , $str ); //过滤applet标签 $str =preg_replace( "/<(style.*?)>(.*?)<(\/style.*?)>/si" , "" , $str ); //过滤style标签 $str =preg_replace( "/<(\/?style.*?)>/si" , "" , $str ); //过滤style标签 $str =preg_replace( "/<(title.*?)>(.*?)<(\/title.*?)>/si" , "" , $str ); //过滤title标签 $str =preg_replace( "/<(\/?title.*?)>/si" , "" , $str ); //过滤title标签 $str =preg_replace( "/<(object.*?)>(.*?)<(\/object.*?)>/si" , "" , $str ); //过滤object标签 $str =preg_replace( "/<(\/?objec.*?)>/si" , "" , $str ); //过滤object标签 $str =preg_replace( "/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si" , "" , $str ); //过滤noframes标签 $str =preg_replace( "/<(\/?noframes.*?)>/si" , "" , $str ); //过滤noframes标签 $str =preg_replace( "/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si" , "" , $str ); //过滤frame标签 $str =preg_replace( "/<(\/?i?frame.*?)>/si" , "" , $str ); //过滤frame标签 $str =preg_replace( "/<(script.*?)>(.*?)<(\/script.*?)>/si" , "" , $str ); //过滤script标签 $str =preg_replace( "/<(\/?script.*?)>/si" , "" , $str ); //过滤script标签 $str =preg_replace( "/javascript/si" , "Javascript" , $str ); //过滤script标签 $str =preg_replace( "/vbscript/si" , "Vbscript" , $str ); //过滤script标签 $str =preg_replace( "/on([a-z]+)\s*=/si" , "On\\1=" , $str ); //过滤script标签 $str =preg_replace( "/&#/si" , "&#" , $str ); //过滤script标签 |
如果仅仅是过滤一整篇篇html文档,
比如说head这样的整篇文档中所有的html标签,则可以用 php的 strip_tags()函数来脱掉所有的html或php标签。
需要注意的是:strip_tags()函数是不怎么验证标签的完整性的,也就说如果缺少一个或者其他的标签,则很有可能导致有更多的内容被脱掉。
PHP过滤各种HTML标签的表达式,值得收藏的更多相关文章
- JSTL标签,EL表达式,OGNL表达式,struts2标签 汇总
一下纯属个人总结摘抄,总结一起方便查看,解决疑问,有遗漏或错误,还请指出. 1,JSTL标签总结: a).JSTL标签有什么用? JSTL是由JCP(Java Commu ...
- PHP通用的XSS攻击过滤函数,Discuz系统中 防止XSS漏洞攻击,过滤HTML危险标签属性的PHP函数
XSS攻击在最近很是流行,往往在某段代码里一不小心就会被人放上XSS攻击的代码,看到国外有人写上了函数,咱也偷偷懒,悄悄的贴上来... 原文如下: The goal of this function ...
- 前端学习——css基础知识,选择器与html模板、值得收藏的html标签
一.css需要的html(采用html5标准) DTD,文档类型声明: <!Doctype html> 文本编码声明: <meta charset="utf-8" ...
- 过滤字符串html标签方法
过滤字符串html标签方法,如果输入的过滤标签为“*”,那么给字符串加上p标签 public static string noTagHtml(string str, string tagname) { ...
- 正则过滤html的标签
$('#Text').find('br').remove();//移除br标签 let content = $('#smsText').html().replace(/ /g, ' ').replac ...
- div+css样式命名规则,值得收藏
div+css样式命名规则,值得收藏 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:w ...
- [转帖]超详细的PostgreSQL体系结构总结,值得收藏
超详细的PostgreSQL体系结构总结,值得收藏 https://www.toutiao.com/i6715390855772897800/ 原创 波波说运维 2019-07-26 00:03:00 ...
- [转帖]分享Oracle的四道经典面试题,值得收藏
分享Oracle的四道经典面试题,值得收藏 原创 波波说运维 2019-07-20 00:02:00 https://www.toutiao.com/i6713901660919300621/ 概述 ...
- 最值得收藏的Bootstrap资源网站
如果你正在寻找Bootstrap图标,那今天的推荐对你而言绝对非常重要!在这篇内容中,我们把这套框架上的免费字体图 标做了个整合(当然,以后还会不断的更新).正如你所知,图标字体在一个web网页设计拥 ...
随机推荐
- 20155207 2006-2007-2 《Java程序设计》第5周学习总结
20155207 2006-2007-2 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 语法与继承架构 Java中的错误以对象方式呈现为 java.lang.Throwab ...
- Java-JDK & Android SDK下载安装及配置教程
转自:http://blog.csdn.net/dr_neo/article/details/49870587 第一步.安装JDK: 第二步.安装Eclipse: 第三步.下载并安装AndroidSD ...
- test20180919 选择客栈
题意 分析 不难发现把增加人数看成减少人数,上限是w 看成总数是w,问题就变成了询问有多少个子区间没有0. 考虑这个问题困难在哪里,就是区间加减法让我们不好判断0 的位置. 因为题目保证每个位置的值非 ...
- ubuntu安装sublime教程
1.安装Sublime Text 3 及常用的神器插件 ①首先添加sublime text 3的仓库:sudo add-apt-repository ppa:webupd8team/sublime-t ...
- Linux修改开机启动logo
默认开机LOGO会在液晶屏的左上脚显示一只小企鹅,分辨率为80*80,具体在kernel/drivers/video/logo下会有logo_linux_clut224.ppm这幅图像,程序会根据这幅 ...
- citus 多租户应用开发(来自官方文档)
citus 官方文档很不错,资料很全,同时包含一个多租户应用的文档,所以运行下,方便学习 环境准备 使用docker-compose 运行,同时集成了graphql 引擎,很方便 docker-c ...
- dgraph 基本查询语法 一
dgraph 的查询语法是在graphql 上的扩展,添加了新的支持,同时官方提供了一个 学习的网站 https://tour.dgraph.io/ 基本环境(cluster 模式的) 参考 gith ...
- dslr control vis usb
nikon https://sdk.nikonimaging.com/apply/compmail.do Digital-SLR cameras We are offering L ...
- 【转】每天一个linux命令(45):free 命令
原文网址:http://www.cnblogs.com/peida/archive/2012/12/25/2831814.html free命令可以显示Linux系统中空闲的.已用的物理内存及swap ...
- MapReduce-皮尔逊(Pearson)线性相关
Pearson相关系数解决了两个群的数据是否线性相关的问题: 先补充一下基本概念: 协方差:如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值时另外一个也大于自身的期望值,那么两个变量之 ...