php前端页面html压缩输出,destoon压缩html输出 压缩页面大小

项目中用destoon二次开发的时候,有新的需求就是要将destoon的模版解析输出之后,在压缩网页大小。去除掉多余的空格,空行等。这样做的好处是将页面的大小压缩很小,保证在相同的网速下,打开网页的速度更快。

注意:

1、压缩网页的时候,最好将js、jquery抽出去,不然在压缩网页的时候,可能会出现报错,不执行。

2、压缩成一行之后,可以稍微的提高菜鸟仿站的难度。

下面我们来修改destoon的文件:

处理模板文件 template()函数。

文件地址 :/include/global.func.php

function template($template = 'index', $dir = '') {...}

里面函数 template_compile();

文件地址:/include/template.func.php

function template_compile($from, $to) {}

里面调用 函数template_parse()。

function template_parse($str) {

$str = preg_replace("~>\s+\s+\r\n~", ">", $str));

//$str = ltrim(rtrim(preg_replace(array("/> *([^ ]*) *","//","'/\*[^*]*\*/'","/\r\n/","/\n/","/\t/",'/>[ ]+'),array(">\\1

return $str;

}

这里有两种压缩html代码的方式。

第一种:只压缩html代码,不压缩js,jq中的空行,换行等。

$str = preg_replace("~>\s+\s+\r\n~", ">", $str));

压缩之后的结果显示,除了js,jq的代码除外,其他的代码都是一行。

第二种:只要是页内的代码全部的压缩,包括js、jq。

$str = ltrim(rtrim(preg_replace(array("/> *([^ ]*) *","//","'/\*[^*]*\*/'","/\r\n/","/\n/","/\t/",'/>[ ]+'),array(">\\1

压缩之后的结果就是一行,不管js、jq。

这里要是页面中的js、jq都已经抽出去之后,可以使用第二种方式,这样压缩的更加的彻底。要是页面中的js、jq没有抽取干净的话,我建议还是采用第一种方式只压缩网页中除了js、jq以外的html元素。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值