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网页设计拥 ...
随机推荐
- PHP 7.0 升级备注
PHP 7.0.0 beta1 发布了,在带来了引人注目的性能提升的同时,也带来了不少语言特性方面的改变.以下由 LCTT 翻译自对官方的升级备注,虽然目前还不是正式发布版,不过想必距离正式发布的特性 ...
- python 二维list取列
b = [i[0] for i in a] # 从a中的每一行取第一个元素.
- git的使用方法学习
1.git常用命令: git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致.同时,将当前的工作区内容保存到Git栈中. git stash p ...
- python 常见的内置函数
内置函数 接下来,我们就一起来看看python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这 ...
- prisma 服务器端订阅试用
graphql 协议是支持数据的实时订阅功能的(一般基于websocket 进行实现) prisma 支持客户端订阅以及服务器端订阅(类似webhook),可以方便将 数据推送后端服务 目的 pr ...
- 使用 dl 设计的简单的登陆界面 (为了记录)
先贴图 对应的地方放置 一些登陆的图片即可 html 代码如下: <html><head><style>body {text-align:center;margin ...
- 使用php的curl根据关键词爬取百度搜索结果页
http://bbs.csdn.net/wap/topics/390938327 正则表达式匹配Html标签 查找所有的TD区域(最短):<td\s*.*>\s*.*<\/td& ...
- 【转】实战USB接口手机充电 看3.0/2.0谁更快
原文网址:http://mb.it168.com/a2012/0816/1385/000001385641_all.shtml [IT168 应用]当下,越来越多的电脑都已普及USB 3.0接口,新买 ...
- GitHub + circleCI 自动构建/自动部署 应用
GitHub + circleCI 自动构建/自动部署, 这里略过了单元测试,以部署 laravel 应用为例子 比起 gitlab + ansible + genkins 操作起来节省了很多硬件资源 ...
- PHP版本VC6与VC9/VC11/VC14、Thread Safe与None-Thread Safe等的区别
最近正好在弄一个PHP的程序,在这之前一直没有怎么以接触,发现对PHP版本知识了解不是很清楚,自己看了不少类似的文章,还是感觉不够明确和全面, 网上的结论又都是模棱两可,在此,给出最完整甚至武断的解释 ...