PHP:输出不带preg_replace的一行HTML文档


PHP: output one line HTML-document without preg_replace

我需要将HTML文档作为单行字符串输出,以节省服务器和客户端之间的网络流量。一种流行的方法是使用preg_replace,其缺点是速度慢:

$html = preg_replace('~>'s+<~', '><', $html);

另一种方法是在前端打开GZip,这是更好的解决方案。但如果我将使用以下方法:

<!DOCTYPE html><?php
?><html><?php
?><head><?php
  ?><title><?php echo $page_title; ?></title><?php
?></head><?php
?><body><?php
  ?><div><?php
    ?><h1><?php echo $page_title; ?></h1><?php
  ?></div><?php
?></body><?php
?></html>

已编译脚本的字节码存储在APC中。除了可读性较差之外,这种方法还有什么缺点?

Gzip是一个很容易的东西,从来没有理由不使用它。

你可以看看你通过修剪HTML中的空白获得了多少,总的来说,我认为你在谷歌、推特或脸书这样的规模上是不值得的。可读性成本和/或CPU开销是不值得的

我不会担心编译后的脚本大小,如果你真的遇到问题,只需给它更多的RAM。