在 Laravel 4.0 中,我使用下面的代码将 HTML laravel 响应输出压缩到浏览器,但它在 laravel 5 中不起作用。
App::after(function($request, $response)
{
if($response instanceof Illuminate\Http\Response)
{
$buffer = $response->getContent();
if(strpos($buffer,'<pre>') !== false)
{
$replace = array(
'/<!--[^\[](.*?)[^\]]-->/s' => '',
"/<\?php/" => '<?php ',
"/\r/" => '',
"/>\n</" => '><',
"/>\s+\n</" => '><',
"/>\n\s+</" => '><',
);
}
else
{
$replace = array(
'/<!--[^\[](.*?)[^\]]-->/s' => '',
"/<\?php/" => '<?php ',
"/\n([\S])/" => '$1',
"/\r/" => '',
"/\n/" => '',
"/\t/" => '',
"/ +/" => ' ',
);
}
$buffer = preg_replace(array_keys($replace), array_values($replace), $buffer);
$response->setContent($buffer);
}
});
请问我如何在 Laravel 5 中完成这项工作。
或者
如果有的话,请提供一种在 laravel 5 中压缩 HTML 的更好方法。提前致谢。
注意:我不想使用任何 laravel 包来压缩 html,只需要一个简单的代码就可以完成工作而不会影响性能。