【问题标题】:Combining and Compressing multiple JavaScript files in php在php中组合和压缩多个JavaScript文件
【发布时间】:2010-10-26 12:19:39
【问题描述】:

我正在开发一个需要八个 javascript 文件 (hello web2.0) 的 PHP 应用程序。

我想知道动态组合和压缩所有文件的最佳方法是什么。 我是否正确地表达了这个问题?

最终结果是我会在头文件中包含一个 .js 文件,并且该 .js 文件将包含我的“includes/js”目录中的 .js 文件。

谢谢。

【问题讨论】:

  • 这个问题有 2012 年的答案吗?

标签: php javascript jquery jscompress


【解决方案1】:

您可以使用jsmin-php

他们的示例代码是:

require 'jsmin-1.1.1.php';

// Output a minified version of example.js.
echo JSMin::minify(file_get_contents('example.js'));

您可以通过以下方式轻松加入多个 js 文件:

require 'jsmin-1.1.1.php';

// Output a minified version of example.js.
echo JSMin::minify(file_get_contents('example.js') . file_get_contents('example2.js'));

【讨论】:

  • 你会推荐这个而不是使用 Minify 吗?
  • 两者都使用 jsmin 来压缩 Javascript 文件。也许你应该用这两个库压缩你的 js 文件并决定。不过,Minify 的缓存功能似乎不错。
  • 它似乎没有维护,存在一些未解决的问题
  • 这个答案有 2013 版吗?
【解决方案2】:

我在我的 jQuery/PHP 项目中使用了Minify,并取得了很大的成功。它也包括缓存,因此没有太多开销。

我最终改变了一些事情并使用 .htaccess 将所有请求路由到我的 javascript 文件夹到 minify 脚本,例如:

<script type="text/javascript" src="/js/jquery.js,js/jquery-levitip.js,js/jquery-facebox.js,js/datepicker.js,js/ga.js"></script>

将我的前端 HTML 路由到我的缩小脚本中,并将所有这些脚本作为一个,压缩和缩小返回。这样我就可以正常定义包含,一切都在幕后发生。

但无论如何,请查看他们网站上的user guide,它有很好的文档记录,您也应该能够按照自己的方式完成任务。哦,它也适用于 CSS。

【讨论】:

  • 我的 minify 缓存文件夹总是空的,所以我不确定缓存是否工作
【解决方案3】:

您也许可以使用Yahoo JavaScript Compressor,这是一个命令行工具,您可以从 PHP 脚本开始。

【讨论】:

    【解决方案4】:

    您可以尝试PHP Speedy这会将您的 JS 文件合并并压缩为 1 个单个文件。它还将压缩您的 HTML 和 CSS,并且您的页面将加载得更快。

    【讨论】:

      【解决方案5】:
       function compress($buffer) {
              /* remove comments */
              $buffer = preg_replace("/((?:\/\*(?:[^*]|(?:\*+[^*\/]))*\*+\/)|(?:\/\/.*))/", "", $buffer);
              /* remove tabs, spaces, newlines, etc. */
              $buffer = str_replace(array("\r\n","\r","\t","\n",'  ','    ','     '), '', $buffer);
              /* remove other spaces before/after ) */
              $buffer = preg_replace(array('(( )+\))','(\)( )+)'), ')', $buffer);
              return $buffer;
          }
      

      来源:http://castlesblog.com/2010/august/14/php-javascript-css-minification

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-01-24
        • 1970-01-01
        • 1970-01-01
        • 2011-11-26
        • 1970-01-01
        • 2013-04-27
        • 2011-07-21
        相关资源
        最近更新 更多