函数自动剔除标记直接的多余空白,而且会只能判断标记的属性的属性值是否被包裹之间,如果有就剔除属性和属性值之间的所有空格,如果没有就保留一个空格,避免破坏html结构。感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编来看看吧。
经测试代码如下:
/**
* 压缩HTML代码
*
* 函数名: compress_html
* 参数: $string
* 返回值: 压缩后的$string
* @author 编程之家 jb51.cc jb51.cc
**/
function compress_html($string) {
$string = str_replace(\r\n,'',$string); //清除换行符
$string = str_replace(\n,$string); //清除换行符
$string = str_replace(\t,$string); //清除制表符
$pattern = array (
/> *([^ ]*) *</,//去掉注释标记
/[\s]+/,/<!--[\\w\\W\r\\n]*?-->/,/\ /,/ \/,'/\*[^*]*\*/'
);
$replace = array (>\\1<, ,,\,);
return preg_replace($pattern,$replace,$string);
}