php-concat是PHP支持文件合并模块,主要用于合并前端代码减少http请求数,需要WebServer支持。
主要是解决了,在WebServer支持文件合并和不支持文件合并环境之间的兼容性问题。
如:开发环境使用原生Nginx作为WebServer,生产环境使用Tengine并启用ngx_http_concat_module时。
PHP版本需大于等于5.3
安装
$ cd php-concat$ php_installed_path/bin/phpize$ ./configure --with-php-config=php_installed_path/bin/php-config [--enable-concat]$ make# make install最后,在php.ini中加入extension=concat.so
配置
extension=php_concat.dll ; Windowsextension=concat.so ; *nux[Concat]concat.enable = off boolean default value is false. 是否启用文件合并concat.prefix = "??" string default value is "??". 分割前缀。concat.delimiter = "," string default value is ",". 文件与文件之间的分隔符。concat.max_files = 0 integer default value is 0. 最大合并文件数,0 为不限制。
文档:
void Concat::setEnable(boolean $enable);功能说明:设置是否启用文件合并参数:boolean $enable 是否启用文件合并返回值:无boolean Concat::getEnable();功能说明:返回是否启用文件合并参数说明:无返回值:boolean 是否启用文件合并void Concat::setPrefix(string $prefix);功能说明:设置分割前缀参数:string $prefix 分割前缀返回值:无string Concat::getPrefix();功能说明:返回分割前缀参数说明:无返回值:string 分割前缀void Concat::setDelimiter(string $delimiter);功能说明:设置文件分隔符参数:string $delimiter 文件分隔符返回值:无string Concat::getDelimiter();功能说明:返回文件分隔符参数说明:无返回值:string 文件分隔符void Concat::setVersionPrefix(string $versionPrefix);功能说明:设置文件版本前缀参数:string $versionPrefix 文件版本前缀返回值:无string Concat::getVersionPrefix();功能说明:返回文件版本前缀参数说明:无返回值:string 文件版本前缀void Concat::setVersion(string $version);功能说明:设置文件版本参数:string $version 文件版本返回值:无string Concat::getVersion();功能说明:返回文件版本参数说明:无返回值:string 文件版本void Concat::setMaxFiles(integer $maxFiles);功能说明:设置最大合并文件数参数:integer $maxFiles 最大合并文件数返回值:无integer Concat::getMaxFiles();功能说明:返回最大合并文件数参数说明:无返回值:integer 最大合并文件数string Concat::css(string $baseUrl, mixed ...);功能说明:css 文件合并参数说明:string $baseUrl 基 URL mixed 需要合并的文件名称返回值:string 合并后的 style 标签string Concat::javascript(string $baseUrl, mixed ...)功能说明:js 文件合并参数说明:string $baseUrl 基 URL mixed 需要合并的文件名称返回值:string 合并后的 script 标签string Concat::js(string $baseUrl, mixed ...)功能说明:Concat::javascript 别名参数说明:string $baseUrl 基 URL mixed 需要合并的文件名称返回值:string 合并后的 script 标签ini_set("concat.enable", "on");echo Concat::css("https://www.example.com/css/", "a.css", "b/a.css");// <link href="https://www.example.com/css/??a.css,b/a.css" rel="stylesheet" type="text/css" />Concat::setVersionPrefix("version");Concat::setVersion("0.1");echo Concat::javascript("https://www.example.com/js/", "jquery.js", "jquery.ui.js");// <script src="https://www.example.com/js/??jquery.js,jquery.ui.js?version=0.1" type="text/javascript"></script>ini_set("concat.enable", "off");echo Concat::css("https://www.example.com/css/", "a.css", "b/a.css");// <link href="https://www.example.com/css/a.css" rel="stylesheet" type="text/css" /><link href="https://www.example.com/css/b.css" rel="stylesheet" type="text/css" />Concat::setVersionPrefix("version");Concat::setVersion("0.1");echo Concat::javascript("https://www.example.com/js/", "jquery.js", "jquery.ui.js");// <script src="https://www.example.com/js/jquery.js?version=0.1" type="text/javascript"></script><script src="https://www.example.com/js/jquery.ui.js?version=0.1" type="text/javascript"></script>
评论