设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-01-21 14:02 所属栏目:121 来源:互联网
导读:下面用php实现了一个对css进行压缩和解压缩的小程序,暂不适用于js的操作,通过这个案例可以学习php字符替换和正则替换的技术. 将css代码压缩能够减小文件的体积,从而减小了网络传输量和带宽占用,减小了服务器的处理的压力. 代码如下: !DOCTYPE html PUBLIC -/
  下面用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'])); //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("/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>
 

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读