这篇文章主要为大家详细介绍了PHP 过滤html注释的简单示例,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随四海网的小编罗X来看看吧。
<?php
/**
* 过滤html注释
*
* @param
* @arrange (512.笔记) www.q1010.com
**/
$html = "<!--something-->something";
$html = preg_replace("/<!--.*-->/","",$html);
echo $html;
上面的代码将输出 something,似乎成功了呢,不急,多测试几个例子
<?php
/**
* 过滤html注释
*
* @param
* @arrange (512.笔记) www.q1010.com
**/
$html = "<!--something-->something<!--something-->";
$html = preg_replace("/<!--.*-->/","",$html);
echo $html;
这个例子告诉我们,这样写并不能达到我们期望的效果,于是正则优化成了这样
<?php
/**
* 过滤html注释
*
* @param
* @arrange (512.笔记) www.q1010.com
**/
preg_replace("/<!--.*?-->/","",$html);
嗯,这下满意了,但是html中会存在这样的代码<!--[if lt IE 9]>something<![endif]-->,这是浏览器兼容代码,显然是不能被过滤的,所以我们的正则继续优化,变成这样
<?php
/**
* 过滤html注释
*
* @param
* @arrange (512.笔记) www.q1010.com
**/
preg_replace("/<!--[^\!\[]*?-->/","",$html);
又接着如果html中有<script><!--something//--></script>的代码,我们又需要改一下我们的匹配规则了,改成了这样
<?php
/**
* 过滤html注释
*
* @param
* @arrange (512.笔记) www.q1010.com
**/
preg_replace("/<!--[^\!\[]*?(?<!\/\/)-->/","",$html);
这样的话我基本上就去掉了我需要去掉的html的注释了!本文来自:http://www.q1010.com/173/2067-0.html
注:关于PHP 过滤html注释的简单示例的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。
关键词:html
四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。