PHP根據(jù)傳入?yún)?shù)合并多個JS和CSS文件的簡單實現(xiàn)
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:
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;
}
只是個簡單原型,沒有封裝。另外,合并后的文件記得配合緩存。
相關(guān)文章
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
這篇文章主要介紹了Yii2框架引用bootstrap中日期插件yii2-date-picker的方法,實例分析了yii2-date-picker插件的具體使用步驟與相關(guān)技巧,需要的朋友可以參考下2016-01-01
Symfony2框架學(xué)習(xí)筆記之表單用法詳解
這篇文章主要介紹了Symfony2框架學(xué)習(xí)筆記之表單用法,結(jié)合實例形式詳細(xì)分析了Symfony2針對表單的創(chuàng)建,校驗,提交等各種常用技巧,需要的朋友可以參考下2016-03-03

