php怎么去掉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!

经测试尚未发现有将正文过滤掉的情况,如有疑问,欢迎留言指正。

--结束END--

本文标题: php怎么去掉html注释

本文链接: https://www.lsjlt.com/news/145.html (转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢

  • php怎么去掉html注释

    php去掉html注释的方法:1、打开相应PHP代码文件;2、查看html注释的格式;3、通过“preg_replace("/!--[^\!\[]*?(?/","",$html);”方法去掉html注释即可。
    阅读数:918 php
  • php如何去掉注释

    php去掉注释的方法:【function removeComment($content){return preg_replace("/(\/\*(\s|.)*?\*\/)|(\/\/.(\s|.*))|(#(\s*)?(.*))...}】。
    阅读数:113 php 注释
  • php ufeff怎么去掉

    php去掉ufeff的方法:1、将PHP文件保存为无dom格式;2、通过“function checkBOM($filename){...}”方法检查并去掉ufeff即可。
    阅读数:120 php ufeff
  • php bom怎么去掉

    去掉php bom的方法:1、找到PHP根目录;2、将“function checkBOM($filename){...}”等代码放到根目录下,并通过浏览器运行访问即可。
    阅读数:379 bom
  • php怎么去掉前导0

    php去掉前导0的方法:1、创建一个PHP示例文件;2、使用“ltrim($str, '0');”方法移除字符串左侧的“0”即可。
    阅读数:741 php
  • php 怎么去掉多余逗号

    php去掉多余逗号的方法:1、通过“trim($arr1,',')”移除首尾的逗号;2、通过“rtrim($arr1,',')”移除尾的逗号;3、通过“ltrim($arr1,',')”移除首的逗号。
    阅读数:199 php
  • php怎么去掉数组键值

    php去掉数组键值的方法:1、使用“array_keys($array)”语句,可去掉全部键值,返回包含全部键名的数组;2、使用“array_splice($array,$start,$length)”语句,可去掉指定位置的一个或多个键值。
    阅读数:372 php
  • php 代码怎么去掉bom

    php代码掉bom的方法:1、使用“function clearbom($contents){...}”方式去掉文本中的bom头;2、通过“function checkBOM ($filename) {...}”方法检测并去掉bom头;3、通过“function SearchBOM($string) {...}”方法搜索当前文件是否有BOM并去除即可。
    阅读数:107 bom php
  • php 怎么去掉连续空格

    php去掉连续空格的方法:1、创建一个PHP示例文件;2、使用“strip_tags()”函数剥去字符串中的HTML,XML以及PHP的标签;3、通过“str_replace”和“preg_replace”函数实现删除连续空格即可。
    阅读数:645 空格 php
  • php注释乱码怎么办

    php注释乱码是因为页面编码不一致导致的,其解决办法就是在相应的PHP文件中添加“header("Content-Type: text/html; charset=utf-8");”代码即可。
    阅读数:936 php 注释
  • PHP中的注释怎么用

    这篇文章将为大家详细讲解有关PHP中的注释怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP 中的注释PHP 代码中的注释不会被作为程序来读取和执行。它唯一的作用是供代码编辑者阅读。注释用于:使其
    阅读数:685 php
  • php怎么去掉json反斜杠

    php去掉json反斜杠的方法:1、通过“stripslashes($_POST['json']);”方法删除反斜杠;2、通过“json_decode”对JSON格式的字符串进行解码即可。
    阅读数:560 php
  • php正则怎么去掉href

    php正则去掉href的方法:1、创建一个PHP示例文件;2、通过正则表达式“preg_match('/href\s*=\s*(?:"([^"]*)"|\'([^\']*)\'|([^"\'>\s]+))/is'...)”去掉href即可。
    阅读数:365 php 正则 href
  • php怎么去掉最左侧空格

    在php中可以通过ltrim函数实现去掉最左侧空格,其使用语法是“ltrim(string,charlist)”,参数string规定要检查的字符串。
    阅读数:290 php
  • php 怎么实现内容去掉img

    php内容去掉img的方法:1、创建PHP示例文件;2、通过“preg_replace('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i','',$str);”删除即可。
    阅读数:796 php img
  • php 怎么去掉左边的0

    php去掉左边的0的方法:1、新建一个php文件;2、创建一个以0开头的数字变量;3、使用preg_replace函数,并利用正则表达式“/^0+/”,将变量前面的一个或多个0替换为空即可。
    阅读数:339 php
  • php 怎么去掉重复的数据

    php去掉重复的数据的方法:1、通过array_unique函数去掉一维数组中的重复数据;2、通过自定义的unique_arr方法去掉多维数组的重复数据。
    阅读数:397 php
  • php怎么去掉多个相同字符

    去除方法:1、用“str_split($str)”将字符串转为字符数组,一个字符对应一个数组元素;2、用“array_unique($arr)”去除字符数组中的相同字符;3、用“implode("",$newArr)”将去重数组转为字符串。
    阅读数:933 php数组 php字符串 php
  • php怎么去掉数组的某个键

    php去掉数组的某个键的方法:1、创建一个PHP示例文件;2、确定要删除的数组元素的键;3、通过array_diff_key函数删除指定的键即可。
    阅读数:785 php
  • php怎么去掉数值左右的空格

    在PHP中,可以利用trim()函数去掉数值左右的空格,该函数用于移除字符串两侧的空白字符或其他预定义字符,语法为“trim(string,charlist)”。
    阅读数:930 PHP