Utilizziamo Squeeze, la più famosa libreria PHP per comprimere file JAVASCRIPT e rendere quindi più veloce il nostro sito web.
In presenza di elevato traffico sul sito web, occorre ottimizzare il sito web per ridurre il carico di lavoro del server e quindi il tempo di apertura delle pagine. Per comprimere codice Javascript consigliamo di utilizzare Squeeze, una libreria utilizzata dai principali framework JavaScript (come ad esempio jQuery).
Squeeze riduce, comprime, minimizza e manipola il codice Javascript.
Come opera PHP SQUEEZE
- Rimuove i commenti e gli spazi bianchi dal codice js.
- Mantiene i commenti condizionali ("<!--[if IE]>") di Microsoft
- Rinomina le variabili locali, generalmente su un singolo carattere.
- Può rinominare anche variabili globali, metodi e proprietà, ma solo se sono contrassegnati come speciali cioè che iniziano con uno o più $ o con un singolo _.
- Rinomina anche variabili locali e globali trovate nelle stringhe, ma solo se sono contrassegnati come speciali.
Installazione di PHP SQUEEZE
Vediamo come utilizzare Squeeze sul nostro sito web.
Per prima cosa scarichiamo la libreria Squeeze dal repository di GitHub in formato ".zip". Dezippa la cartella e, così com'è, spostala nello spazio web del tuo sito. Se apri la cartella vedrai che in realtà il tutto è all'interno di una classe contenuta in un solo file "JSqueeze.php".
Nel tuo file php, includi questo file.
La variabile "$path" rappresenta il percorso al folder che contiene il file "JSqueeze.php"
<?php
........
$path = '/path/to/library';
require_once $path.'/JSqueeze.php';
........
?>
Vediamo adesso come ottenere un un file javascript minimizzato partendo da uno o più file javascript.
Dopo aver incluso il file "JSqueeze.php", utilizziamo questo codice.
use Patchwork\JSqueeze;
$jz = new JSqueeze();
// il path al file javascript che vuoi minimizzare
$sourcePath = '/path/to/firstfile.js';
// carico il contenuto del file nella variabile "fatJs"
$fatJs = file_get_contents($sourcePath);
// se hai più files da minimizzare, ripeti la produra per tutti i files, mettendo il loro contenuto sempre nella variabile "fatJs"
$sourcePath2 = '/path/to/secondfile.js';
$fatJs .= file_get_contents($sourcePath2);
// chiamare il metodo squeeze
$minifiedJs = $jz->squeeze(
$fatJs,
true, // linea singola
true, // mantieni i commenti importanti
false // variabili speciali
);
Nota: se stai utilizzando la libreria all'interno di una funzione, devi porre "use Patchwork\JSqueeze;" al di fuori della funzione.
"$sourcePath" rappresenta il path al file da minimizzare.
Con un "file_get_contents" ne preleviamo il contenuto.
E infine chiamiamo il metodo "squeeze".
Vediamo assieme il significato dei parametri
Il primo parametro serve a passare il codice js da minimizzare.
Il secondo parametro ("linea singola") consente di decidere se si desidera mantenere il capo riga se viene trovato un punto e virgola. Impostato a true, viene mantenuto.
Il terzo parametro ("mantieni i commenti importanti") ti consente, usando "true", di preservare i commenti importanti , cioè quelli che iniziano per "/*!"
Il quarto parametro ("variabili speciali"), se settato a "true", rinomina anche variabili globali, metodi e proprietà, ma solo se sono contrassegnati come "speciali" cioè che iniziano con uno o più "$" o con un singolo "_". Nel nostro esempio settiamo "false".
Per ulteriori dettagli sull'utilizzo della libreria, visita il progetto su GitHub
That's all!
Potrebbe interessarti
- YUI Compressor: minimizzare i file CSS e Javascript
- Grunt: come minimizzare file css e javascript, ed ottimizzare le immagini
- Gulp: come minimizzare file css e javascript, compilare file scss, ed ottimizzare le immagini.
- Utilizziamo la libreria PHP Minifier per comprimere file CSS e JAVASCRIPT e rendere più veloce il nostro sito web.