抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

php自动压缩多个JS

11月份都没更新了
今天就凑个数吧
上次讲了自动压缩css
这次就介绍自动压缩js
第一种方法跟上次差不多
只是表达式不一样而已
这种方法也可以压缩html的
我就不讲了
第二种方法利用jsmin类进行的
我是使用第二种的
你们就自己选个适合自己的
好了废话不多说,看操作

第一种GZIP压缩方式,新建js.php

 
  1. error_reporting(E_ALL & ~E_NOTICE);
  2. if(extension_loaded('zlib')){//检查服务器是否开启了zlib拓展
  3. ob_start('ob_gzhandler');
  4. }
  5. header ("content-type:application/x-javascript; charset: gb2312"); //注意如果乱码请修改为你的编码
  6. header ("cache-control: must-revalidate");
  7. $offset = 60 * 60 * 24; //js文件的距离现在的过期时间,这里设置为一天
  8. $expire = "expires: " . gmdate ("D, d M Y H:i:s", time() + $offset) . " GMT";
  9. header ($expire);
  10. ob_start("compress");
  11. function compress($buffer) {
  12. //去除文件中的注释
  13. $buffer = preg_replace('/\/\/.*/','', $buffer);
  14. //去除文件换行,空格的注释
  15. $buffer = str_replace(array("
  16. ", "\r", "\n", "\t", '  ', '    ', '    '), '', $buffer);
  17. return$buffer;
  18. }
  19. //包含你的全部js文档
  20. include('js/test1.js');
  21. include('js/test2.js');
  22. if(extension_loaded('zlib')){
  23. ob_end_flush(); //输出buffer中的内容,即压缩后的js文件
  24. }

第二种利用jsmin类,新建js.php

 
  1. error_reporting(E_ALL & ~E_NOTICE);
  2. header('Content-type: text/javascript');
  3. require 'jsmin.php';//调用jsmin类
  4. //file_get_content('压缩js文件')
  5. echo JSMin::minify(file_get_contents('test1.js').file_get_contents('test2.js'));

jsmin.php下载

Jsmin.php类
说明:放到当前你的主题目录

调用方法

 
  1. <scripttype="text/javascript"src="js.php?v=1.0">script>

8 评论

既然来了就吐个槽吧

撰写评论~

单词 jfwkc7s第三个字符是什么?
  1. Avatar
    飞线 网友

    这个压缩之后对收录有木有影响?

  2. Avatar
    疯佬 管理员

    @杨小杰: 所以这个故事告诉我们写js要规范

  3. Avatar
    杨小杰 网友

    js的压缩让我想到了一件事,很多js的编写并不规范,没有;分隔,压缩之后会导致不能使用的情况

  4. Avatar
    瑾忆 网友

    (*^▽^*)还真撸出来了吖

  5. Avatar
    疯佬 管理员

    @瑾忆: 你不是一直想要

  6. Avatar
    瑾忆 网友

    @老司机: 嘿嘿♪(・ω・)ノ

  7. Avatar
    土鳖哥 网友

    一位会折腾的高手啊!

  8. Avatar
    疯佬 管理员

    @土鳖哥: 过奖,菜鸟一位

Music Icon🎵 未加载歌曲
00:00
00:00
暂无歌词
Power by 疯狂老司机