Thinkphp JS/CSS 简单合并压缩工具

浏览:5576 最后更新:2016-05-16 17:26 分类:类库 关键字: Thinkphp JS/CSS 简单合并压缩工具
Thinkphp JS/CSS 简单合并压缩工具
@auther: lhb <lihaibo123as@163.com>

1.添加全局方法及全局配置
1.1全局配置 CONFIG_MIN_FILE&&是否开启debug 模式 一起控制是否开启压缩
1.2全局方法
/**
*压缩js/css
* @param $group 文件分组
* @param $file 文件名
* @param bool $create 是否输出压缩文件连接
* @return string
*/
function min_file($group, $file, $create = false) {
return \Extend\Lib\CompressFile::put($group, $file, $create);
}


2.模块Extend 放到自己项目目录内。

3.使用方法css /js 都可压缩。传入文件自动判断文件类型
视图文件内引入方法调用 ,需要将一批css 文件合并为一组压缩为一个文件css 分组定为global-style

{:min_file('global-style','__GLOBAL__plugins/font-awesome/css/font-awesome.min.css')}
{:min_file('global-style','__GLOBAL__plugins/simple-line-icons/simple-line-icons.min.css')}
{:min_file('global-style','__GLOBAL__plugins/bootstrap/css/bootstrap.min.css')}
{:min_file('global-style','__GLOBAL__plugins/uniform/css/uniform.default.css')}

{:min_file('global-style','__GLOBAL__plugins/bootstrap-toastr/toastr.min.css',true)}
//分组最后个方法第三个参数为true 标记分组文件到齐可以输出压缩文件连接了。

输出:
开启压缩则输出
<link href="/Runtime/Application/Static/css/global-style-07352b3e6ccf3ab8ab84458376319d89.css" rel="stylesheet" type="text/css"/>
连接后缀07352b3e6ccf3ab8ab84458376319d89 值是根据组内所有文件hash MD5计算所得。保证当前js 也是为当前组内文件最新数据。
不压缩则原始连接
<link href="Public/global/plugins/font-awesome/css/font-awesome.min.css?hash=3034188d" rel="stylesheet" type="text/css"/>
<link href="Public/global/plugins/simple-line-icons/simple-line-icons.min.css?hash=097e4703" rel="stylesheet" type="text/css"/>
<link href="Public/global/plugins/bootstrap/css/bootstrap.min.css?hash=d88a215e" rel="stylesheet" type="text/css"/>
<link href="Public/global/plugins/uniform/css/uniform.default.css?hash=0e27d454" rel="stylesheet" type="text/css"/>
<link href="Public/global/plugins/bootstrap-toastr/toastr.min.css?hash=1e2f43e6" rel="stylesheet" type="text/css"/>

4.js使用方式同上。

5.具体方法逻辑可查看扩展模块源码。

评论( 相关
后面还有条评论,点击查看>>