我正在尝试在WordPress中快速缩小CSS,因为如果我直接进行缩小,那么当评论被删除时,我的主题将无效。
首先,我尝试从任何指定的css文件中删除注释,其工作正常,这里是代码
<?php
$cssfile = 'style.css';//css file needed to minify
$file = fopen($cssfile, 'r');
if ($file) {
$buffer = file_get_contents('style.css');//getting content of css file needed to minify
$buffers = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);
echo $buffers;
}?>
我想在飞行中做同样的事情。在许多教程中,所有使用ob_start()
并说http request
。我不知道这些事情和他们的东西,我也无法看到他们在第一行$cssfile
我认为他们正在告诉$_GET[something]
文件。这是他们提到需要缩小的css文件吗?(提到css的路径)
任何人都可以通过解释ob_start(),http请求以及它如何工作来帮助我实现动态css minify。
答案 0 :(得分:1)
可以从css文件中删除多余的空格
试试这个
<?php
$search = array(
'/\>[^\S]+/s', // strip whitespaces after tags, except space
'/[^\S]+\</s', // strip whitespaces before tags, except space
'/(\s)+/s' // shorten multiple whitespace sequences
);
$replace = array(
'>',
'<',
'\\1'
);
$style = preg_replace($search, $replace, $buffer = file_get_contents('style.css'));
?>
<style type="text/css"><?php echo $style; ?></style>
答案 1 :(得分:0)
好。这个怎么样: http://manas.tungare.name/software/css-compression-in-php
他的功能似乎解决了你的问题。