缩小 PHP 文件的 HTML 部分是否会对性能和带宽产生影响?
Will minifying the HTML portion of a PHP file have an effect on performance and bandwidth?
比如说我有,例如:
<body>
<h1>Title</h1>
<article>
<h2>Article</h2>
<p>Here's a list of some stuff</p>
<ul>
<?php
foreach ($examples as $example) {
echo "<li>" . $example . "</li>";
}
?>
</ul>
</article>
</body>
我知道缩小这样的文件是可能的,但我的问题更多地与它是否值得做有关。
缩小此类文件的 HTML 部分是否会对性能产生影响?如果可以,如果它是通过 require('file.php')
而不是浏览器请求 file.php
,它还会这样做吗?
这些性能差异只会影响解释器的处理时间,还是会对最终发送到浏览器的数据量产生影响?
是的,它对带宽有影响。通常,minifying/uglifying 是用 JavaScript 代码和 CSS 样式完成的,因为它在那里有很大的影响。有很大的开销,例如图书馆不是 minified/uglified。对于 HTML,它显然对带宽具有相同的影响,但范围要低得多。例如,您的 HTML 片段可以缩小,可以保存 119 字节 (ASCII)。这是 39%,但绝对值非常低,只有 119 字节。
因此,我建议仅在 HTML 的大部分不寻常或使用 HTML 模板时才缩小标记。使用 HTML 模板,可以很容易地缩小它,但是如果您使用 PHP 的 echo
逐行输出 HTML 标记,则必须执行手动缩小。
同时确保启用 gzip
。使用 gzip 压缩比缩小 HTML 节省更多。您可以启用它,例如使用该命令(在第一个输出行之前)。
<?php ob_start("ob_gzhandler"); ?>
如果您的 HTML 在 PHP 脚本中,并且您正在缩小 PHP 脚本,您可能会认为 HTML 也被缩小了用它。但这取决于您的缩小器的工作方式。
参见 this question 缩小 HTML。答案似乎是否,它对性能没有影响值得您花时间。
比如说我有,例如:
<body>
<h1>Title</h1>
<article>
<h2>Article</h2>
<p>Here's a list of some stuff</p>
<ul>
<?php
foreach ($examples as $example) {
echo "<li>" . $example . "</li>";
}
?>
</ul>
</article>
</body>
我知道缩小这样的文件是可能的,但我的问题更多地与它是否值得做有关。
缩小此类文件的 HTML 部分是否会对性能产生影响?如果可以,如果它是通过 require('file.php')
而不是浏览器请求 file.php
,它还会这样做吗?
这些性能差异只会影响解释器的处理时间,还是会对最终发送到浏览器的数据量产生影响?
是的,它对带宽有影响。通常,minifying/uglifying 是用 JavaScript 代码和 CSS 样式完成的,因为它在那里有很大的影响。有很大的开销,例如图书馆不是 minified/uglified。对于 HTML,它显然对带宽具有相同的影响,但范围要低得多。例如,您的 HTML 片段可以缩小,可以保存 119 字节 (ASCII)。这是 39%,但绝对值非常低,只有 119 字节。
因此,我建议仅在 HTML 的大部分不寻常或使用 HTML 模板时才缩小标记。使用 HTML 模板,可以很容易地缩小它,但是如果您使用 PHP 的 echo
逐行输出 HTML 标记,则必须执行手动缩小。
同时确保启用 gzip
。使用 gzip 压缩比缩小 HTML 节省更多。您可以启用它,例如使用该命令(在第一个输出行之前)。
<?php ob_start("ob_gzhandler"); ?>
如果您的 HTML 在 PHP 脚本中,并且您正在缩小 PHP 脚本,您可能会认为 HTML 也被缩小了用它。但这取决于您的缩小器的工作方式。
参见 this question 缩小 HTML。答案似乎是否,它对性能没有影响值得您花时间。