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

用PHP在服务端合并多个JS与CSS文件减少HTTP请求,提高速度

发布时间:2022-02-23 14:55 所属栏目:121 来源:互联网
导读:在Web,js,css文件会越多,那么对就增加了http请求数,解决该问题的一个好的方法就是合并js,css文件,下面就简单介绍一个方法,十分简单,本文以实现原理为主,代码可能会有出入,如果大家直接用请调试一下. HTML代码如下: link rel=stylesheet type=text/css href=c
  在Web,js,css文件会越多,那么对就增加了http请求数,解决该问题的一个好的方法就是合并js,css文件,下面就简单介绍一个方法,十分简单,本文以实现原理为主,代码可能会有出入,如果大家直接用请调试一下.
 
  HTML代码如下:
 
  <link rel="stylesheet" type="text/css" href="cssmin.php?get=base,style1,style2,global&path=css/&v=20131023" />
  <script type="text/javascript" src="jsmin.php?get=jquery-1.6.4.min.js,minjquery.js,minjquery.ui.js,test.js,global.js&path=js/&v=20131023"></script>
  PHP 代码如下:
 
  //输出JS
  header ("Content-type:Application/x-javascript; Charset: utf-8");
  if(isset($_GET)) {
      $files = explode(",", $_GET['get']);
      $str = '';
      foreach ($files as $key => $val){
          $str .= file_get_contents($_GET['path'].$val);
      }
  
      $str = str_replace("t", "", $str); //清除空格
      $str = str_replace("rn", "", $str);  
      $str = str_replace("n", "", $str);  
  
      // 删除单行注释
      $str = preg_replace("///s*[a-zA-Z0-9_x7f-xff][a-zA-Z0-9_x7f-xff]*/", "", $str);  
      // 删除多行注释
      $str = preg_replace("//*[^/]**//s", "", $str);
  
      echo $str;
  }
  
  //输出CSS
  header ("content-type:text/css; charset: utf-8");
  if(isset($_GET)) {
      $files = explode(",", $_GET['get']);
      $fc = '';
      foreach ($files as $key => $val){
          $fc .= file_get_contents($_GET['path'].$val.".css");
      }  //开源软件:Cuoxin.com
      $fc = str_replace("t", "", $fc); //清除空格
      $fc = str_replace("rn", "", $fc);  
      $fc = str_replace("n", "", $fc);  
      $fc = preg_replace("//*[^/]**//s", "", $fc);  
      echo $fc;  
  }
  只是个简单原型,没有封装,另外,合并后的文件记得配合缓存.

(编辑:ASP站长网)

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