Squeezer

PHP library minifier

Download as .zip Download as .tar.gz View on GitHub

Squeezer

Author Build Status Coverage Status Quality Score Dependency Status

Latest Stable Version Total Downloads License

Squeezer is a minifier for php class files. It will parse your directories to find valid classes, interfaces and traits and squeeze them to one file. Autoloading in php is quite nice but also expensive. Sometimes too expensive for production. Using a minified file reduces the execution time of your application but increases the memory usage. Take care which directories or packages you want to squeeze. For production you should only squeeze used packages.

Installation

The recommended way to install mamuz/squeezer is through composer by adding dependency to your composer.json:

{
    "require-dev": {
        "mamuz/squeezer": "0.*"
    }
}

Features

Usage

Run this command line to squeeze your library without comments to classes.min.php:

./vendor/bin/squeeze classes.min.php --source="module/*/src, vendor/zendframework/*/src" --exclude="zend-loader" --nocomments

For instance, we are using a typical ZendFramework Application, but you can adapt this command to each environment

After that you can include classes.min.php inside your index.php, but before loading composer autoloader.

For instance...

//...
include_once 'classes.min.php';
include_once 'vendor/autoload.php'; // composer autoloader
//...

Use this command to get synopsis about all arguments

./vendor/bin/squeeze --help