php怎么去除内容,php中去除文字内容中所有html代码

PHP已经为我们提供了很多清除html格式的方法了

I. strip_tags

strip_tags($str) 去掉 HTML 及 PHP 的标记

语法: string strip_tags(string str);

传回值: 字串

函式种类: 资料处理

内容说明 :

解析:本函式可去掉字串中包含的任何 HTML 及 PHP 的标记字串。若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误。这个函数和 fgetss() 有着相同的功能

例子

echo strip_tags("Hello world!");

# Hello world!

II. htmlspecialchars

这个函数把html中的标签转换为html实体,博客的代码展示就必须使用这个函数,要不贴出来的代码就会被执行了。

预定义的字符是:

& (和号) 成为 &

” (双引号) 成为 ”

‘ (单引号) 成为 ‘

< (小于) 成为 < > (大于) 成为 >

例子

$new = htmlspecialchars("Test", ENT_QUOTES);

echo $new;

# Test

# 如果需要展现

,那么浏览器解析HTML的时候会自动将他变为换行

# 但是通过htmlspecialchars就可以让

与htmlspecialchars功能相反的函数是htmlspecialchars_decode,他会把HTML实体转化为字符!

III. 后补函数

PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。

$descclear = str_replace("\r","",$descclear);//过滤换行

$descclear = str_replace("\n","",$descclear);//过滤换行

$descclear = str_replace("\t","",$descclear);//过滤换行

$descclear = str_replace("\r\n","",$descclear);//过滤换行

$descclear = preg_replace("/\s+/", " ", $descclear);//过滤多余回车

$descclear = preg_replace("/

$descclear = preg_replace("//si","",$descclear); //过滤html注释

$descclear = preg_replace("//si","",$descclear); //过滤DOCTYPE

$descclear = preg_replace("//si","",$descclear); //过滤html标签

$descclear = preg_replace("//si","",$descclear); //过滤head标签

$descclear = preg_replace("//si","",$descclear); //过滤meta标签

$descclear = preg_replace("//si","",$descclear); //过滤body标签

$descclear = preg_replace("//si","",$descclear); //过滤link标签

$descclear = preg_replace("//si","",$descclear); //过滤form标签

$descclear = preg_replace("/cookie/si","COOKIE",$descclear); //过滤COOKIE标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤applet标签

$descclear = preg_replace("//si","",$descclear); //过滤applet标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤style标签

$descclear = preg_replace("//si","",$descclear); //过滤style标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤title标签

$descclear = preg_replace("//si","",$descclear); //过滤title标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤object标签

$descclear = preg_replace("//si","",$descclear); //过滤object标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤noframes标签

$descclear = preg_replace("//si","",$descclear); //过滤noframes标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤frame标签

$descclear = preg_replace("//si","",$descclear); //过滤frame标签

$descclear = preg_replace("/(.*?)/si","",$descclear); //过滤script标签

$descclear = preg_replace("//si","",$descclear); //过滤script标签

$descclear = preg_replace("/javascript/si","Javascript",$descclear); //过滤script标签

$descclear = preg_replace("/vbscript/si","Vbscript",$descclear); //过滤script标签

$descclear = preg_replace("/on([a-z]+)\s*=/si","On\\1=",$descclear); //过滤script标签

顶一下

(0)

100%订阅

回复

踩一下

(0)

100%

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值