uglify-php
v1.0.7
Published
UglifyPHP is a JavaScript minifier and simple obfuscator for PHP files
Downloads
528
Maintainers
Readme
UglifyPHP
UglifyPHP is a JavaScript minifier and simple obfuscator for PHP files.
How It Works
This package use a unique ID based on the current time to replace variables. You can use two minified files together and don't have to worry with variable overwriting.
This package can minify Classes
and replace correctly variables and functions references with $this
. It will not change any function name or create "junk code" for performance reasons.
This should not be used as a licensing or code protection solution.
Installation
npm install uglify-php
Usage
const UglifyPHP = require('uglify-php');
let options = {
"excludes": [
'$GLOBALS',
'$_SERVER',
'$_GET',
'$_POST',
'$_FILES',
'$_REQUEST',
'$_SESSION',
'$_ENV',
'$_COOKIE',
'$php_errormsg',
'$HTTP_RAW_POST_DATA',
'$http_response_header',
'$argc',
'$argv',
'$this'
],
"minify": {
"replace_variables": true,
"remove_whitespace": true,
"remove_comments": true,
"minify_html": false
},
"output": "C:/web/file_min.php" // If it's empty the promise will return the minified source code
}
// You can use a path or the source code
UglifyPHP.minify("C:/web/file.php", options).then(function (source) {
console.log(source);
});
Example
Original Source Code:
<?php
class BaseClass {
private $name = "Uglify-PHP";
function __construct() {
$this->sayHello();
}
// Comment Block
public function sayHello(){
echo "Hello " . $this->name;
}
}
$obj = new BaseClass();
?>
Minified Source Code:
<?php class BaseClass{private $j5lg3rhh="Uglify-PHP";function __construct(){$this->sayHello();}public function sayHello(){echo "Hello ".$this->j5lg3rhh;}}$j5lg3rhj=new BaseClass();?>