[轉]PHP 產出CSS壓縮檔案

列印

轉貼自: http://dzone.com/snippets/php-function-optimize-css-file

透過此 function 可在吐 CSS 時, 或者在版本 Release 時, 自動壓縮

 

<?php
/**
* Converts a CSS-file contents into one string
* Source Code: http://snippets.dzone.com/posts/show/4137
* @Author: Dmitry-Sh http://snippets.dzone.com/user/Dmitry-Sh
*
* @param    string  $t Text data
* @param    int     $is_debug Skip convertion
* @return   string  Optimized string
*/
function text_smooth_css($t, $is_debug = 0)
{
if (
$is_debug) {
return
$t;
}

/* Remove comments */
$t = preg_replace("/\/\*(.*?)\*\//s", ' ', $t);

/* Remove new lines, spaces */
$t = preg_replace("/(\s{2,}|[\r\n|\n|\t|\r])/", ' ', $t);

/* Join rules */
$t = preg_replace('/([,|;|:|{|}]) /', '\\1', $t);
$t = str_replace(' {', '{', $t);

/* Remove ; for the last attribute */
$t = str_replace(';}', '}', $t);
$t = str_replace(' }', '}', $t);

return
$t;
}
?>