分享一下在網路上找到,用 PHP 開發的 HTML, CSS, JavaScript minifier,也有人把 minify 稱之為壓縮(compress),我個人認為這並不是真正意義上的”壓縮”,”壓縮”應該是像是 gzip 或是 apache 的 mod_deflate 才是,所以 minify 會是比較好的說法,minify 是一種瘦身工具,去除了不必要的多餘字元,進而達到減少檔案原始 size 的方式,實際測試呢?本站的首頁原始大小約為 20617 bytes,經過這隻程式 minify 之後,網頁瘦身成 19117 bytes,成功減重 7.27%。
客倌們千萬不要小看這減少的 1500 bytes,而認為這只是區區小數目,這剛好是一個 Ethernet MTU 的大小,也就是說當訪客瀏覽你的網站時,每一次可以節省一個封包的傳送,如果你的網站有百萬PV,就可以節省下將近 1.5 GB 的傳輸流量,有道是『滴水穿石,積沙成塔』,更何況『天下武功,唯快不破』,網路也是一樣的道理。
如果啟用 gzip 壓縮呢?剛剛前面的19117 bytes 會進一步縮減到 6700 bytes 左右,這才是真正的壓縮,一般來說可以減少 60-70% 的網頁大小,簡單來說:
網頁壓縮(gzip or mod_deflate) + Minifier 等於網頁傳輸的最佳瘦身方案。
PHP Function to Minify HTML, CSS and JavaScript
https://gist.github.com/tovic/d7b310dea3b33e4732c0#file-php-html-css-js-minifier-php
使用方式可以參考下面的簡單範例:
require_once 'php-html-css-js-minifier.php'; $htmlstr = minify_html($htmlstr);
About the author