最简单的css和js文件合并

      随着web页面功能越来越多,css和js使用也越来越多。但是一个页面中js和css越多导致页面请求次数就越多,网络延迟也会加大。

网上有很多jss的压缩合并工具,但是都不是很方便。

       其实来如果css和js所在的服务器支持动态程序比如php或者.jsp就很好办了,在静态服务器放一个php文件,用php动态生成就很方便了。

<html xmlns="http://www.w3.org/1999/xhtml">
<meta charset="UTF-8">
<title>列表页</title>
<head>
<link rel="stylesheet" type="text/css" href="/static/index.php?css/base.css;css/admin.css" />
<script type="text/javascript" charset="UTF-8" src="/static/index.php?js/common.js;js/admin.js;nav.js;page.js"></script>
</head><body>
</body>
</html>

核心在于static.php完成css和js代码合并,当然在index.php这个文件也可以完成css和js文件的压缩。其实来这个文件也很简单

<?php
$files = explode(';',trim($_SERVER['QUERY_STRING'],';') );

strpos($_SERVER['QUERY_STRING'],'.css')!==false && header('Content-Type: text/css');
$a = array();
foreach($files as $fn){
        $fn = './'.preg_replace('/[^a-z0-9\/\.\_\-]/i','',$fn);
       $a[] = "\n/* -- $fn ---*/";
	//判断要合并的文件是否存在
	if (!file_exists($fn)){
		
	} else{
		$a[]=file_get_contents($fn);
	}
}
$s=implode('',$a);
echo $s;
	




版权声明:本文为robinhunan原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。