Funzione per comprimere html con php

Oggi vediamo come comprimere html (minify) utilizzando una semplice funzione php.

Alcune volte si ha la necessità di dover comprimere inline porzioni di html utilizzando php. Grazie alla funzione sotto-riportata potete farlo in modo molto agevole.

function htmlCompress($html)
{
    preg_match_all('!(<(?:code|pre|script).*>[^<]+</(?:code|pre|script)>)!',$html,$pre);
    $html = preg_replace('!<(?:code|pre).*>[^<]+</(?:code|pre)>!', '#pre#', $html);
    $html = preg_replace('#<!–[^\[].+–>#', '', $html);
    $html = preg_replace('/[\r\n\t]+/', ' ', $html);
    $html = preg_replace('/>[\s]+</', '><', $html);
    $html = preg_replace('/[\s]+/', ' ', $html);
    if (!empty($pre[0])) {
        foreach ($pre[0] as $tag) {
            $html = preg_replace('!#pre#!', $tag, $html,1);
        }
    }
    return $html;
}

Per richiamare la funzione vi basterà fare come segue:

$html = '
<p style="text-align: center;">Esempio di testo html</p>

<p style="text-align: center;">su più righe e spazi</p>';

echo htmlCompress($html);

Questo articolo ti è stato utile? Lascia un saluto nei commenti!

0 0 voti
Valutazione dell'articolo
Iscriviti
Notificami
guest

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

0 Commenti
Vecchi
Più recenti Le più votate
Rimani Aggiornato
Nuove idee, zero Spam
Ti invieremo solo le ultime novità di articoli o nostri progetti.
Iscrivendoti accetti la nostra privacy poliicy. Una volta iscritto, ricordati di attivare l'iscrizione cliccando sul link ricevuto via mail.
0
Esprimete la vostra opinione commentando.x