PHP Version Compatibility

The report at Utilities > System > PHP Version Compatibility displays a list of the ionCube®-encoded files in your WHMCS installation directory that may not properly decode in certain versions of PHP. This utility only inspects decoding compatibility and not PHP syntax compatibility.

This provides transparency for files that you may have deployed over the lifespan of your installation, particularly files for custom or third-party code. WHMCS does not control these files but, if their encoding is incompatible with your environment, they may negatively affect WHMCS.

This utility only inspects decoding compatibility and does not assert PHP syntax compatibility.

Performing a Scan

The first time that you perform a scan, click Scan. For later scans, click Rescan.

The scan checks your WHMCS installation for encoded files. Then, it evaluates ionCube-encoded files to determine the ionCube Encoder version.

To improve performance, the system excludes the /vendor, /attachments, /downloads, and /template cache directories from inspection. These directories contain many decodable files that have no negative effect on WHMCS.

Reading the Report

The report includes tabs for each PHP version. Under each tab, you can click the following headings to display lists of files:

  • Click Compatible Encoding to view a list of files that the selected PHP version can decode.
  • Click Incompatible Encoding to view a list of files that the selected PHP version cannot decode.
  • Click Encoding Compatibility Unknown to view a list of files with unknown compatibility.
    The system may be unable to determine decoding compatibility due to the way in which ionCube encodes some files. For more information, see Encoding Compatibility Unknown below.

Encoding Compatibility Unknown

The Encoding Compatibility Unknown report does not immediately indicate a problem. Instead, it indicates that the utility cannot accurately determine the PHP versions that the file’s encoding may support.

We recommend checking with the code’s vendor to confirm whether it is compatible with the desired target PHP version. In many cases, developers have already released updates to provide compatibility.

If you can confirm compatibility, you do not need to perform any other actions. If, however, there is no update available for your target PHP version, perform one of the following actions:

  • Stop using the module and remove it from your WHMCS installation.
  • Wait for the vendor to issue an update that provides compatibility with your desired PHP version before upgrading PHP.

Vendor Support

Support for multiple PHP environments will vary between vendors. WHMCS uses ionCube’s bundled encoding feature to generate files for multiple PHP environments simultaneously.

  • If a vendor chooses to use the same approach as WHMCS, the PHP Version Compatibility report can concisely determine the supported versions for decoding in their software.
  • If a vendor opts to provide different encodings for different PHP environments, the encoding may not be descriptive enough to accurately confirm compatibility.
For more information, see System Requirements.

Last modified: June 7, 2024