PHP Self-Update System Features

Auto update PHP scripts with PHP self-update script

Invisible, automatic background updates

Auto install and update PHP scripts in background; just call a built-in function to download the latest files on user’s machine.


Need a personal solution? You can have it! Create an interactive installer to download a specific version of your script compatible with PHP version installed on user’s system. Enable user to select and install a desired version of your application. Force instant updates and don’t allow user to skip them. Allow user to run an old version for a limited time and then ask to upgrade. The possibilities are endless.

Smooth integration into any PHP-based script

Integration is simple: just include two files and define basic settings. Included modules are only executed when an update is needed; therefore, they don’t affect your script’s performance.


Automatic installation and updates work on any platform with PHP 5.5 or higher along with its most popular libraries: cURL and ZipArchive. That is to say, if your server runs WordPress, it’s fully compatible with PHP auto update system too.

PHP encoders, accelerators and templates support

PHP self-update script works with all types of applications developed in any framework or without it. As a result, it will install and update standalone programs, addons, plugins, themes, and so on.


Moreover, the software supports all popular PHP encoders, accelerators and templating engines.

Unlimited products, versions and files

Use a single installation to manage an unlimited number of products, versions, and files. No matter how many different versions you have and how big your programs are, PHP Auto Update Script will handle them all.

Separate installation and upgrade packages

Update PHP scripts faster by storing installation and upgrade archives separately. For the most part, authors use the same package for both new installations and upgrades, which means slower updates. In that case, client needs to re-download a whole package just to apply a minor update.


PHP self-update system solves this problem by storing each archive separately. Hence, authors can include only modified files in upgrade package, reducing its size and download time. Then again, developers can keep both installation and upgrade files in the same package if they want to.

Separate MySQL installation and upgrade queries

Don’t hardcode MySQL queries into scripts anymore. With the help of PHP auto update system, developers can now setup and update databases by fetching MySQL queries from their servers in real-time.


Never heard of such a feature before? Here are some possible uses… Users who downloaded your script years ago, still can install the latest version without re-downloading installation archive again. When a new version only affects database structure, client can update database without even downloading upgrade package. When used in conjunction with Auto PHP Licenser, it makes illegal copies of your script useless because even if pirates have program files, they can’t setup database.

Active versions limit for each product

Many developers maintain a limited number of releases at a time. For example, if a program has versions 1.0, 2.0 and 3.0, author might discontinue v1.0 support after releasing v4.0. To clarify, author supports three versions in this example. Therefore, if someone requests for v1.0 support, author will ask him to upgrade first.


PHP self-update system automates it by marking old releases as expired with each update. For example, if active versions limit is set to 3 and product has versions 1.0, 2.0 and 3.0, v1.0 will be set as expired right after v4.0 is released. Once v5.0 is released, PHP Auto Update Script will disable v2.0, and so on. If user tries to deploy an expired version, installer will prompt him to download one of supported releases.

Individual version expiration dates

Developers can now set a specific date after which new installations and/or upgrades of a particular version will be disabled.


For instance, if a particular version expires on 2020-03-15, users won’t be able to install it after specified date. That is to say, installer will display a notification that version expired and user should get the latest version.

Installation and upgrade limits

PHP self-update system can limit the number of installations and/or upgrades for each version. Once the total number of installations reaches a specified number, a particular version automatically expires.

Precise product installation lists

Track every single copy of your scripts using precise product installation lists. Group them by individual programs, see the total number of installations of each application, sort installations by version, IP address, date, or status.

Installation and upgrade callbacks

Callbacks module expands product installation lists by providing detailed records of each installation, upgrade and even version check attempt. Every callback displays a product and its version, operation type (installation, upgrade, version check), user’s IP address, date, and status.

Thorough, real-time reports

If installation lists and callbacks are not enough, jump into product reports for ultimate details. View the result of each operation along with installation details and exact error reason (in case of failure), filter logs by product, report text, date, etc.

Detailed changelogs and release notes

No version is complete without a detailed changelog and release notes. PHP self-update system stores individual changelogs for each version to make update management and change tracking easy.


All changelogs are stored on your server and can be displayed inside your scripts. For example, when user checks for a new version, PHP Auto Update Script can present him with a complete changelog of a selected release, so user can decide how well it suits his needs.

Custom notifications in your language

Many software creators target their local markets and PHP self-update script makes it simple. Want to display a message “Produktas, kurį bandote įdiegti, nerastas arba yra neaktyvus” instead of “Requested product not found or is inactive“? Now you can do so.


Personalized notifications are stored on author’s server and get processed inside scripts in real time. Made a grammar mistake? Want to add more text? Modify notifications on your server and they will be automatically updated across all your scripts.

Updates verification and users blocking

In brief, this option ensures that only verified installations will receive updates. A verified installation is the one performed right from your script on user’s machine and hashed on PHP Auto Update Script server. Hence, if someone transfers program files to another machine, such installation is not verified. For this reason, script will block updates for this user.


Equally important, it’s possible to ban individual hosts, so they can’t even connect to PHP auto update system.

Built-in API for complete automation

Setup and manage products, release new versions, view callbacks, search for data, and perform other actions from your website or script via remote API.


PHP auto update system API supports multiple keys and permissions. Hence, developers can setup individual keys to perform different functions. Additionally, it’s possible to lock API key to a specific IP address for ultimate security.

Bundled demo script and code examples

The installation package comes with a detailed documentation, code examples and a fully functional demo program, so even beginner coders can integrate and start using PHP self-update script in minutes.

Auto PHP Licenser integration ready

Use PHP self-update system along with Auto PHP Licenser to ensure only paid clients install and run your programs. Initialize license verification before calling any of PHP Auto Update Script functions and code execution will only occur if user’s license is valid and active.


Verification is performed on your server where Auto PHP Licenser is installed and only succeeds when license is valid and meets other requirements, such as domain, IP address, installation path, etc. Put simply, there’s no way for user to bypass or fake this check.