PHP Classes


Recommend this page to a friend!
  Classes of Andrea Giammarchi   JavaScript Compressor   ABOUT   Download  
Role: Documentation
Content type: text/plain
Description: About JavaScriptCompressor
Class: JavaScript Compressor
Pack JavaScript code to reduce its size
Author: By
Last change: Updated removing Dean Edwards packer rules, not necessary with 0.7 version or greater.
Date: 16 years ago
Size: 2,695 bytes


Class file image Download
JavaScriptCompressor class, removes comments or pack JavaScript source[s] code. ______________________________________________________________ JavaScriptCompressor (just 2 public methods) | |________ getClean(jsSource:mixed):string | returns one or more JavaScript code without comments, | by default removes some spaces too | |________ getPacked(jsSource:mixed):string returns one or more JavaScript code packed, using getClean and obfuscating output -------------------------------------------------------------- Note about $jsSource input varible: this var should be a string (i.e. $jsSource = file_get_contents("myFile.js");) should be an array of strings (i.e. array(file_get_contents("1.js"), file_get_contents("2.js"), ... )) should be an array with 1 or 2 keys: (i.e. array('code'=>file_get_contents("mySource.js"))) (i.e. array('code'=>file_get_contents("mySource.js"), 'name'=>'mySource')) ... and should be an array of arrays created with theese rules array( file_get_contents("secret.js"), array('code'=>$anotherJS), array('code'=>$myJSapplication, 'name'=>'JSApplication V 1.0') ) The name used on dedicated key, will be write on parsed source header -------------------------------------------------------------- Note about returned strings: Your browser should wrap very long strings, then don't use cut and paste from your browser, save output into your database or directly in a file or print them only inside <script> and </script> tags -------------------------------------------------------------- Note about parser performance: With pure PHP embed code this class should be slow and not really safe for your server performance then don't parse JavaScript runtime for each file you need and create some "parsed" caching system (at least while i've not created a compiled version of theese class functions). Here there's a caching system example: -------------------------------------------------------------- Note about JavaScript packed compatibility: To be sure about compatibility include before every script JSL Library: JSL library add some features for old or buggy browsers, one of those functions is String.replace with function as second argument, used by JavaScript generated packed code to rebuild original code. Remember that KDE 3.5, Safari and IE5 will not work correctly with packed version if you'll not include JSL.