PHP:输出一行不带preg_replace的HTML文档
Posted
技术标签:
【中文标题】PHP:输出一行不带preg_replace的HTML文档【英文标题】:PHP: output one line HTML-document without preg_replace 【发布时间】:2013-08-21 12:16:48 【问题描述】:我需要将 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 中。除了可读性较差之外,这种方法还有哪些缺点?
【问题讨论】:
【参考方案1】:Gzip 很简单,没有理由不使用它。
您可以查看通过修剪 HTML 中的空白可以获得多少收益,总的来说,我认为这不值得,因为您处于 Google、Twitter 或 Facebook 的规模。可读性成本和/或 CPU 开销不值得。
我不会担心编译后的脚本大小,如果您真的遇到问题,只需为其提供更多 RAM。
【讨论】:
以上是关于PHP:输出一行不带preg_replace的HTML文档的主要内容,如果未能解决你的问题,请参考以下文章
preg_replace 这个:123.. - 可能是一个简单的 PHP / preg_replace / RegEx 问题,但老实说我很难过