نحوه compress کردن خروجی html در لاراول بدون استفاده از پکیج

image post

نحوه compress کردن خروجی html در لاراول بدون استفاده از پکیج

compress کردن html به شما اجزه می دهد تا وب سایت خود را با سرعت و حجم کمتری به استفاده کنندگان ارائه نمایید

در لاراول بهترین گزینه برای compress کردن html استفاده از middleware است !

کد های middleware :

<?php namespace App\Http\Middleware;

class MinifyHtml implements Middleware {

    public function handle($request, Closure $next)
    {
        $buffer = $next($request);
        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);

        return $buffer 
    }
}

middleware بالا را بر روی تمامی route ها اعمال نمایید تا کار فشرده سازی با موفقیت انجام شود !

دنیس ریچی : یونیکس بسیار ساده هست، تنها یک نابغه باید باشید تا بتوانید سادگی آن را درک کنید.