Linked-in profile Github profile Twitter profile Curriculum vitae
Categories: PHP Projects
9th January 2017
16th February 2020

A free online PHP code obfuscator, with options.

Multi-layered obfuscation, anti-rename, SNTP verification, minify, GZ compress, never the same output.

Once available on my old site of, I’ve now made available my PHP script obfuscator at it’s final home!

So what is an obfuscator you ask? Obfuscation is the process of taking perfectly readable code and turning into into a mess of jumbled text, while still producing the same programmatic output. Basically making it difficult for a human to simply open and read the source code.

Useful in circumstances where sensitive information needs to be kept away from prying eyes! However obfuscation is not the go to savior on protecting your creative works.  Because of the way PHP works, an experienced PHP programmer will be able to “reverse engineer” the obfuscation to access the underlying code and find out how things tick! This obfuscator is simply designed to make it a laborious and unique task for each script. So without giving away too much I’ll bullet point some feature highlights below.

So give it a try below, select your script for upload, and configure the obfuscator. If you have any suggestions, feedback or issue please comment below.

Note: Cookie functionality will be added to the output script, when any ‘Expiry options’ are enabled.

PHP obfuscator

Main options

Select your PHP script to obfuscate. Maximum 200kb.

A reference that can be used in messages to the user. The ID can be referenced with {SCRIPT-REF}, and the script name with {SCRIPT-NAME}

This text will be the top line comment of your encoded PHP file. This message can not be changed after the file is encoded.

Encoding options

Remove comments, tabs and unnecessary spaces. All code is reduced to a single line.

This requires support of the function gzuncompress() on the destination server. Your encoded file should in the range of 40-60% smaller than the source.

Script execution will be stopped if filename is different from what is uploaded to the obfuscator.

This text is shown if the file name of the script has been changed.

Expiry options

No time limitations on script, will never expire.

Compare server date and expire date, before executing.

Connect to a time server (NTP) to compare current date, against expire date, before executing. (Recommended if the destination server will have access to the Internet with the pre-set server addresses. Requires port 37 to be open on server/firewall.)

Date when this script will stop functioning.

    :   : 

This text will be shown when your script expires.

Primary time server (NTP) to connect to.

Secondary, if primary fails.

Tertiary, if secondary and primary fail.

The amount of time (in seconds) before another server check should be made (via cookie).

This text is shown if the script is unable to connect with any of the listed time servers. (Keep the message obscure like the example below, you don't want to give the person viewing the page an idea of whats going on in the background.)

Leave a Reply

Your email address will not be published. Required fields are marked *