如何缩小php页面的html输出?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (42)

我正在寻找一个PHP脚本或类,它可以缩小我的php页面html输出,就像Google页面速度一样。

我该怎么做?

提问于
用户回答回答于

HTML

告诉Apache使用GZip提供HTML ,这通常会将响应大小减少约70%。(如果使用Apache,配置gzip的模块取决于版本:Apache 1.3使用mod_gzip,而Apache 2.x使用mod_deflate。)

Accept-Encoding:gzip,deflate 内容编码:gzip

在帮助ob_start的缓冲区中使用下面的代码片段从HTML中删除空格:

<?php

function sanitize_output($buffer) {

    $search = array(
        '/\>[^\S ]+/s',     // strip whitespaces after tags, except space
        '/[^\S ]+\</s',     // strip whitespaces before tags, except space
        '/(\s)+/s',         // shorten multiple whitespace sequences
        '/<!--(.|\s)*?-->/' // Remove HTML comments
    );

    $replace = array(
        '>',
        '<',
        '\\1',
        ''
    );

    $buffer = preg_replace($search, $replace, $buffer);

    return $buffer;
}

ob_start("sanitize_output");

?>
用户回答回答于

可以做这样的事情:

$this->output = preg_replace(
    array(
        '/ {2,}/',
        '/<!--.*?-->|\t|(?:\r?\n[ \t]*)+/s'
    ),
    array(
        ' ',
        ''
    ),
    $this->output
);

通过将html转换为一行,无选项卡,无新行,无评论,这将删除大约30%的页面大小。

扫码关注云+社区

领取腾讯云代金券