PHP Version Compatibility

From WHMCS Documentation

Revision as of 22:11, 2 February 2022 by SarahK (talk | contribs) (Created page with "In WHMCS 7.5 and above, you can view a report of ionCube-encoded files in your WHMCS installation directory that may not properly decode under certain versions of PHP. You ca...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

In WHMCS 7.5 and above, you can view a report of ionCube-encoded files in your WHMCS installation directory that may not properly decode under certain versions of PHP.

You can generate this report at Utilities > System > PHP Version Compatibility.

This provides transparency for files that you may have deployed over the lifespan of your installation, namely files belonging to custom or 3rd party code. WHMCS does not control these files however 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.

PHP-Version-Compat-Utility.png

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.

Excluded Directories
The "/vendor", attachments, downloads and template cache directories are specifically excluded from inspection. These directories may contain many files, all of which should be decodable and have no negative effect on WHMCS, and thus are not evaluated to aid performance of the utility.

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 whose compatibility is not known.