首页 > php开发 > php实现对css文件进行压缩和解压缩

php实现对css文件进行压缩和解压缩

下面用php实现了一个对css进行压缩和解压缩的小程序,暂不适用于js的操作,通过这个案例可以学习php字符替换和正则替换的技术.

将css代码压缩能够减小文件的体积,从而减小了网络传输量和带宽占用,减小了服务器的处理的压力.

代码如下:

<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
</head> 
<?php
$string = trim(stripslashes($_POST['code'])); //stripslashes()函数删除转义字符(反斜杠)
if (!emptyempty($string)) {
    if ($_POST['method'] == '压缩') {
        $string = css_compress($string);
    } elseif ($_POST['method'] == '解压缩') {
        $string = css_decompress($string);
    }
} else {
    $string = '';
}
function css_compress($string) {
    //压缩
    $string = str_replace("rn", "", $string); //首先去掉换行
    $string = preg_replace("/(s*{s*)/", "{", $string);
    $string = preg_replace("/(s*;s*}s*)/", "}", $string); //去掉反括号首位的空格和换行,和最后一个;
    $string = preg_replace("/(s*;s*)/", ";", $string);
    return $string;
}
function css_decompress($string) {
    //解压
    $string = css_compress($string); //为了效果更好,解压前,先压缩至最简状态
    $string = str_replace("{", "rn{rnt", $string);
    $string = str_replace("}", "rn}rnrn", $string);
    $string = str_replace(";", ";rnt", $string);
    $string = str_replace("*/", "*/rn", $string);
    return $string;
}
?>
<body> 
  <div style="width:800px;height:500px;text-align:center"> 
  <p><strong>请将css代码粘贴到下面框中,然后选择压缩/解压缩</strong></p> 
  <form action="" method="post" name="css_code"> 
<textarea style="width:90%;height:460px;padding:5px;" name="code"><?php
echo $string; ?> </textarea> 
<br /> 
<input type="submit" name="method" value="压缩" /> 
<input type="submit" name="method" value="解压缩" /> 
  </form> 
  </div> 
</body> 
</html>


文章链接:http://www.phprm.com/develop/fs3520.html

随便收藏,请保留本文地址!

标签:css文件压缩 css文件解压缩

发表留言