当前仓库属于暂停状态,部分功能使用受限,详情请查阅 仓库状态说明
20 Star 32 Fork 17

凡星/weiphp4.0
暂停

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
minify.php 1.97 KB
一键复制 编辑 原始数据 按行查看 历史
凡星 提交于 2017-07-20 14:51 . weiphp4.0beta版发布
<?php
/*
* load: css, js 静态文件
* 启用 gz压缩、缓存处理、过期处理、文件合并等优化操作
*/
if (extension_loaded ( 'zlib' )) {
// 检查服务器是否开启了zlib拓展
ob_start ( 'ob_gzhandler' );
}
define ( 'IS_CGI', (0 === strpos ( PHP_SAPI, 'cgi' ) || false !== strpos ( PHP_SAPI, 'fcgi' )) ? 1 : 0 );
if (IS_CGI) {
// CGI/FASTCGI模式下
$_temp = explode ( '.php', $_SERVER ['PHP_SELF'] );
define ( '_PHP_FILE_', rtrim ( str_replace ( $_SERVER ['HTTP_HOST'], '', $_temp [0] . '.php' ), '/' ) );
} else {
define ( '_PHP_FILE_', rtrim ( $_SERVER ['SCRIPT_NAME'], '/' ) );
}
$_root = rtrim ( dirname ( _PHP_FILE_ ), '/' );
define ( '__ROOT__', (($_root == '/' || $_root == '\\') ? '' : $_root) );
$allowed_content_types = array (
'js',
'css'
);
$f = strip_tags ( $_GET ['f'] );
$getfiles = explode ( ',', $f );
// 解析参数
$gettype = (isset ( $_GET ['t'] ) && $_GET ['t'] == 'css') ? 'css' : 'js';
if ($gettype == 'css') {
$content_type = 'text/css';
} elseif ($gettype == 'js') {
$content_type = 'application/x-javascript';
} else {
die ( 'not allowed content type' );
}
header ( "content-type: " . $content_type . "; charset: utf-8" ); // 注意修改到你的编码
header ( "cache-control: must-revalidate" ); //
header ( "expires: " . gmdate ( "D, d M Y H:i:s", time () + 86400 ) . " GMT" ); // 过期时间
ob_start ( "compress" );
function compress($buffer) { // 去除文件中的注释
$buffer = preg_replace ( '!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer );
return $buffer;
}
foreach ( $getfiles as $file ) {
$fileType = strtolower ( substr ( $file, strrpos ( $file, '.' ) + 1 ) );
if (in_array ( $fileType, $allowed_content_types )) {
// 包含你的全部css文档
$file = str_replace ( __ROOT__, '', $file );
$file = ltrim ( $file, '/' );
readfile ( $file );
} else {
echo 'not allowed file type:' . $file;
}
}
// 输出buffer中的内容,即压缩后的css文件
if (extension_loaded ( 'zlib' )) {
ob_end_flush ();
}
?>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
PHP
1
https://gitee.com/bctos_cn/weiphp4.0.git
[email protected]:bctos_cn/weiphp4.0.git
bctos_cn
weiphp4.0
weiphp4.0
master

搜索帮助