Php birden JavaScript dosyalarını birleştirerek ve Sıkıştırma

5 Cevap php

Ben sekiz javascript dosyaları (merhaba web2.0) gerektiren bir PHP uygulaması üzerinde çalışıyorum.

I am wondering what the best way combine and compress all of the files dynamically. Am I phrasing the question correctly?

Sonuçta ben bir. Js başlığında dosyasını ve bu içerecek olmasıdır. Js dosya benim "/ js içeren" dizininde. Js dosyaları içerir.

Teşekkürler.

5 Cevap

Sen kullanabilirsiniz jsmin-php

Onların örnek kod:

require 'jsmin-1.1.1.php';

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

Kolayca gibi bir şey yaparak birkaç js dosyaları katılabilir:

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'));

I Minify başarı dolu ile benim jQuery / PHP projeleri ile kullandım. Fazla havai yoktur bu yüzden çok önbelleğe içerir.

. Etrafa şeyler değişiyor ve küçültmek komut benim javascript klasöre tüm isteklerini htaccess rota kullanarak, böylece, örneğin sona erdi:

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

Benim ön-uç HTML benim küçültmek komut içine yolları ve biri olarak tüm bu komut verir, sıkıştırılmış ve minified ile. Ben tanımlayabilirsiniz bu şekilde normal içerir ve her şey perde arkasında olur.

Ama yine de kendi sitesinde user guide kontrol, çok iyi belgelenmiş, ve siz de istediğiniz yolu kapalı şeyleri çekmek gerekir. Oh ve çok CSS için çalışıyor.

Belki PHP script sizin başlayabileceğini bir komut satırı aracıdır Yahoo JavaScript Compressor hangi kullanabilirsiniz.

Sen PHP Speedy Bu birleştirmek ve 1 tek dosya halinde sizin için JS dosyaları sıkıştırmak deneyebilirsiniz. Ayrıca, HTML ve CSS sıkıştırmak ve sayfanızın çok daha hızlı yüklenir.

 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;
    }

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