Możesz uzyskać to, co najlepsze z obu światów, zminimalizować plik w czasie wykonywania i wypakować dane wyjściowe.
Plik źródłowy jest nadal czytelny, gdy trzeba go edytować, ale jest skompresowany podczas pobierania
po pierwsze: użyj htaccess, aby powiedzieć apache'owi, aby traktował wszystkie pliki css jako skrypty php i kompresował dane wyjściowe, gdy jest typu text / css
w .htaccess AddHandler php5-cgi .css AddType text / css .css AddOutputFilterByType DEFLATE text / css
po drugie: użyj buforowania danych wyjściowych z funkcją wywołania zwrotnego, aby zminimalizować kod css przed rozpoczęciem pobierania, a także ustaw czas wygaśnięcia, aby plik był buforowany
w twoim pliku css
<?php
ob_start("trima");
header("Content-type: text/css; charset=utf-8");
ob_start();
date_default_timezone_set('GMT');
$lasmod = "Last-Modified: " . strftime ("%a, %d %b %Y %T GMT", filemtime (__FILE__));
Header($lastmod);
$offset = 3600*24*30*12;
$expire = "Expires: " . date("D, d M Y H:i:s", time() + $offset) . " GMT";
Header($expire);
function trima($str) {
$str = str_replace(array("\n", "\r", "\t", "\o", "\xOB"), '', $str); // remueve enter tabs y demas
$str = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $str); // remueve comentarioa
$str = ereg_replace("[ ]+", " ", $str); //remueve espacios multiples
$rep = array( '{ '=>'{', ' }'=>'}', '; '=>';', ', '=>',', ' {'=>'{', '} '=>'}', ': '=>':', ' ,'=>',', ' ;'=>';' ); // remueve espacios inecesarios
$str = strtr($str, $rep);
return $str;
}
?>
css content here
Po trzecie: zysk?