下面用php实现了一个对css进行压缩和解压缩的小程序,暂不适用于js的操作,通过这个案例可以学习php字符替换和正则替换的技术.
将css代码压缩能够减小文件的体积,从而减小了网络传输量和带宽占用,减小了服务器的处理的压力.
代码如下:
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
- <html xmlns="http://www.w3.org/1999/xhtml">
-
- <head>
-
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- </head>
-
- <?php
-
- $string = trim(stripslashes($_POST['code']));
-
- 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("\r\n","",$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("{","\r\n{\r\n\t",$string);
-
- $string = str_replace("}","\r\n}\r\n\r\n",$string);
-
- $string = str_replace(";",";\r\n\t",$string);
-
- $string = str_replace("*/","*/\r\n",$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>
|