php怎么去掉html注释
时间:2021-10-08
来源:互联网
今天PHP爱好者为您带来php去掉html注释的方法:1、打开相应PHP代码文件;2、查看html注释的格式;3、通过“preg_replace("/<!--[^\!\[]*?(?<!\/\/)-->/","",$html);”方法去掉html注释即可。希望对大家有所帮助。
本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。
php怎么去掉html注释?
PHP过滤html注释
过滤html注释:
所谓过滤,不过是字符串的匹配与替换,这里我们用到的正则匹配替换函数preg_replace(reg,replace,string);,PHPer都清楚,这个函数的关键在于reg的精确度,那么我们就来试试看吧:
首先要知道html注释的格式,是这样的:<!--注释内容-->。
开始正则的书写
$html = "<!--something-->something";
$html = preg_replace("/<!--.*-->/","",$html);
echo $html;
上面的代码将输出 something,似乎成功了呢,不急,多测试几个例子
$html = "<!--something-->something<!--something-->";
$html = preg_replace("/<!--.*-->/","",$html);
echo $html;
这个例子告诉我们,这样写并不能达到我们期望的效果,于是正则优化成了这样
preg_replace("/<!--.*?-->/","",$html);
嗯,这下满意了,但是html中会存在这样的代码<!--[if lt IE 9]>something<![endif]-->,这是浏览器兼容代码,显然是不能被过滤的,所以我们的正则继续优化,变成这样
preg_replace("/<!--[^\!\[]*?-->/","",$html);
又接着如果html中有<script><!--something//--></script>的代码,我们又需要改一下我们的匹配规则了,改成了这样
preg_replace("/<!--[^\!\[]*?(?<!\/\/)-->/","",$html);
这样的话我基本上就去掉了我需要去掉的html的注释了!
意外收获:在优化过程中,没有多多行注释进行考虑,但规则意外的正常匹配了多行注释,不知道是否因为是从文件读取的html!
经测试尚未发现有将正文过滤掉的情况,如有疑问,欢迎留言指正。
以上就是php怎么去掉html注释的详细内容,更多请关注php爱好者其它相关文章!
-
关于神舟精盾K460N电脑的一键U盘启动(神舟精盾k460n-i3 d1) 时间:2025-06-27
-
U盘启动中对内存的诊断方法(u盘启动数据还在吗) 时间:2025-06-27
-
U盘升级win7系统时出现蓝屏故障怎么办?(u盘从装win7系统) 时间:2025-06-27
-
U盘的禁用与启动设置(禁用u盘命令) 时间:2025-06-27
-
如何利用U盘启动盘破解电脑开机密码(如何通过u盘启动) 时间:2025-06-27
-
怎么在PE系统里面固定U盘盘符(怎么在pe系统里安装软件) 时间:2025-06-27
今日更新
-
如何解决php翻页出现乱码问题
阅读:18
-
vuejs中axios用法是什么
阅读:18
-
php 分页查询怎么写
阅读:18
-
Php怎么将所有指定字符替换
阅读:18
-
php和laravel是什么
阅读:18
-
laravel视图在哪个目录
阅读:18
-
laravel怎么删除路由缓存
阅读:18
-
laravel设置重定向的方法有哪些
阅读:18
-
vuejs slot 怎么使用
阅读:18
-
laravel config()方法是干什么的
阅读:18