В Laravel 4.0 я использую приведенный ниже код, чтобы сжать выходные сообщения ответа ларавелла HTML в браузере, однако он не работает в 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.
ИЛИ
Пожалуйста, предоставьте лучший способ сжатия HTML в laravel 5, если таковой имеется. Заранее спасибо.
NB: я не хочу использовать какой-либо пакет laravel для сжатия html, просто нужен простой код, который делает работу без потери производительности.