2009-05-15 21 views
12

私は8つのjavascriptファイル(hello web2.0)を必要とするPHPアプリケーションを開発中です。複数のJavaScriptファイルを組み合わせて圧縮する

すべてのファイルを動的に結合して圧縮するにはどうすればよいのでしょうか。 質問を正しく表現していますか?

最終的には、ヘッダーに1つの.jsファイルが含まれ、その.jsファイルは "includes/js"ディレクトリに.jsファイルが含まれます。

ありがとうございました。

+3

はこの質問への2012年の答えはありますか? – Ben

答えて

14

あなたは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')); 
+1

Minifyを使ってこれをお勧めしますか? – superUntitled

+0

jsminを使用してJavascriptファイルを圧縮します。おそらく、両方のライブラリでjsファイルを圧縮して決定する必要があります。しかし、Minifyのキャッシング機能は良いようだ。 – pgb

+0

いくつかの未解決の問題では維持されていないようです – Deebster

7

多くの成功を収めている私のjQuery/PHPプロジェクトでMinifyを使用しました。それにはキャッシュも含まれているため、オーバーヘッドはあまりありません。

私は例えばので、縮小化スクリプトに私のjavascriptのフォルダにすべての要求を周りのものを変更し、ルートに.htaccessファイルを使用して終了:私の縮小化スクリプトに私のフロントエンドのHTMLルートと

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

をし、これらのスクリプトはすべて圧縮され、縮小されたものとして返されます。そうすれば、インクルードを正常に定義することができ、すべてがバックグラウンドで発生します。

しかし、いずれにしても、サイトのuser guideを確認してください。文書化されているので、必要なものを取り除くことができます。ああ、それもCSSのために動作します。

+0

私のminifyキャッシュフォルダは常に空ですので、私は作業をキャッシュしているのか分かりません –

2

あなたは多分あるYahoo JavaScript Compressorを使用することができますPHPスクリプトからコマンドラインツールを起動することができます。

0

試してみるPHP Speedy JSファイルを結合して1つのファイルに圧縮します。また、HTMLとCSSを圧縮するので、ページの読み込み速度が大幅に向上します。

-1
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

関連する問題