一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP小技巧之JS和CSS優化工具Minify的使用方法

PHP小技巧之JS和CSS優化工具Minify的使用方法

2020-06-30 11:57php編程技巧 PHP教程

為減少HTTP請求,我們往往需要合并和壓縮多個JS和CSS文件,下面記錄下網上關于實現這個功能的PHP源碼以及開源項目Minify的使用方法

一、實現合并和壓縮多個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("\r\n", "", $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");
 }
 $fc = str_replace("\t", "", $fc); //清除空格
 $fc = str_replace("\r\n", "", $fc);
 $fc = str_replace("\n", "", $fc);
 $fc = preg_replace("/\/\*[^\/]*\*\//s", "", $fc);
 echo $fc;
}

 

只是個簡單原型,沒有封裝。另外,合并后的文件記得配合緩存

二、Minify的使用方法

1、從code.google.com/p/minify/下載最新版Minify并解壓縮,將"min"文件夾連同里面的內容一起復制到DOCUMENT_ROOT目錄下(即網站跟目錄)。

可以修改文件夾名"min"

2、在"min/groupsConfig.php"里配置g參數

 

復制代碼 代碼如下:

return array(
  // 'js' => array('//js/file1.js', '//js/file2.js'),
  // 'css' => array('//css/file1.css', '//css/file2.css'),
);

 

3、在網頁中按照如下方式引用就可以了:

<script type="text/javascript" src="/min/g=js&20140519"></script>

后面的數字可以用更新日期來作標志,"min"和步驟1里的名稱對應。

4、性能優化,請參考code.google.com/p/minify/wiki/CookBook

注意:

1、需要將httpd.conf里的rewrite_module模塊開啟

2、開發過程中,可以將調試模式開啟,開發完畢后再將調試模式關閉,可以利用火狐瀏覽器的firebug來查看

 

復制代碼 代碼如下:

$min_allowDebugFlag = true

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲区在线播放 | 欧美一区二区不卡视频 | 国产色视频一区二区三区 | 香蕉国产人午夜视频在线观看 | 91看片淫黄大片.在线天堂 | 吃大胸寡妇的奶 | 亚洲国产成人综合 | 欧美办公室激情videos高清 | chinese国产打屁股 | 寡妇一级毛片 | 色婷婷影院在线视频免费播放 | 国产一级特黄aa大片在线 | 爽好紧别夹宝贝叫大声点护士 | 亚洲男人的天堂在线 | 无码日韩精品一区二区免费 | 日日免费视频 | 日韩欧美中文字幕一区 | 国产午夜免费 | 奇米精品| 性做久久久久久 | 国产精品边做边接电话在线观看 | 男人最爱看的网站 | 777午夜精品免费播放 | 成年人视频在线免费看 | 秋霞黄色大片 | 国产精品美女久久久久网站 | 亚洲国产成人精品无码区5566 | 五月丁开婷婷 | 校园高h | 天天躁天天碰天天看 | 娇妻与老头绿文小说系列 | 免费特黄一级欧美大片 | 九九365资源稳定资源站 | 碰91精品国产91久久婷婷 | 极品虎白女在线观看一线天 | 欧洲男同直粗无套播放视频 | eee在线播放成人免费 | 色戒完整版 | 秋霞理论一级在线观看手机版 | 交换朋友夫妇3中文字幕 | 亚洲男gay |