Title: Eli&#039;s PHP Compatibility Scanner
Author: Eli Hanna
Published: <strong>October 11, 2025</strong>
Last modified: March 9, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/eli-php-compatibility-scanner.svg)

# Eli's PHP Compatibility Scanner

 By [Eli Hanna](https://profiles.wordpress.org/eliehanna/)

[Download](https://downloads.wordpress.org/plugin/eli-php-compatibility-scanner.1.1.1.zip)

 * [Details](https://twd.wordpress.org/plugins/eli-php-compatibility-scanner/#description)
 * [Reviews](https://twd.wordpress.org/plugins/eli-php-compatibility-scanner/#reviews)
 *  [Installation](https://twd.wordpress.org/plugins/eli-php-compatibility-scanner/#installation)
 * [Development](https://twd.wordpress.org/plugins/eli-php-compatibility-scanner/#developers)

 [Support](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/)

## Description

**⚠️ Important: Development Environment Only**

This plugin is designed for development environments like LocalWP, XAMPP, or self-
hosted servers. It will **not work** on most managed hosting providers (WP Engine,
Kinsta, SiteGround, etc.) due to security restrictions that disable the `exec()`
function and limit access to PHP binaries.

**How It Works**

This plugin leverages [PHP_CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer)
with the [PHPCompatibility](https://github.com/PHPCompatibility/PHPCompatibility)
standard to perform deep static analysis of your PHP code.

**Core Components:**

 1. **Bundled Dependencies**: Includes PHP_CodeSniffer and PHPCompatibility ruleset
 2. **Batch Processing**: Scans files in configurable batches (10-100 files) to manage
    memory usage
 3. **Command Execution**: Executes PHPCS via PHP’s `exec()` function with specific
    parameters
 4. **Server-Side State**: Stores file lists in WordPress options to optimize AJAX 
    requests
 5. **Progressive UI**: Real-time batch results with stop/start controls

**How to Use:**

 1.  Navigate to **Tools  PHP Compatibility Scanner**
 2.  Review the **System Check** section to ensure your environment is compatible
 3.  Select the **plugins and/or themes** you want to scan by checking their boxes
 4.  Configure your scan options:
 5.   * **Target PHP Version**: Choose the PHP version you want to test against (7.4–
        8.4)
      * **Batch Size**: Select how many files to process at once (default: 50 files)
      * **Skip Vendor Directory**: Keep checked to skip third-party dependencies
 6.  Click **Start Scan** to begin the compatibility check
 7.  View results in real-time as each plugin/theme is scanned
 8.  Review any **errors** (❌) or **warnings** (⚠️) found in your code
 9.  Click on any target to expand and see detailed compatibility issues

**Why It Requires Development Environments**

 * **`exec()` Function**: Required to run PHPCS binary – disabled on managed hosts
 * **PHP Binary Access**: Needs access to PHP executable – restricted on shared 
   hosting
 * **Composer Dependencies**: Requires vendor directory with PHPCS installation
 * **File System Access**: Creates temporary files for batch processing
 * **Memory/Time Limits**: Long-running scans need relaxed execution limits

**Supported Environments**

 * **LocalWP** (recommended)
 * **XAMPP/MAMP**
 * **Docker WordPress** setups
 * **Self-hosted** VPS/dedicated servers
 * **Development** environments with shell access

**Unsupported Environments**

 * **WP Engine** (exec() disabled)
 * **Kinsta** (security restrictions)
 * **SiteGround** (managed hosting limitations)
 * **GoDaddy Managed WordPress** (function restrictions)
 * **WordPress.com** (no plugin uploads)
 * Most **shared hosting** providers

### Contributing

This plugin is actively developed for WordPress development environments. Contributions
are welcome, especially:

 * Additional PHP version compatibility rules
 * Performance optimizations
 * UI/UX improvements
 * Hosted environment compatibility solutions

### Technical Details

**Dependencies**

 * **PHP_CodeSniffer**: ^3.13 (static analysis engine)
 * **PHPCompatibility**: dev-develop (compatibility ruleset)

**License**

GPLv2 or later – same as WordPress core.

## Screenshots

 * [[
 * Plugin dashboard displaying environment compatibility check results
 * [[
 * Configuration panel with scan options and available plugins/themes selection
 * [[
 * Scan results showing detected PHP compatibility errors in selected plugins
 * [[
 * Clean scan results indicating no compatibility issues found

## Installation

**Prerequisites**

 * **Development Environment**: LocalWP, XAMPP, MAMP, or self-hosted server
 * **PHP 7.4+**: Required for plugin operation
 * **WordPress 4.5+**: Minimum WordPress version

**Setup Instructions**

 1. **Download/Install** the plugin to your `wp-content/plugins/` directory
 2. **Activate Plugin** in WordPress Admin  Plugins
 3. **Access Tool** via WordPress Admin  Tools  PHP Compatibility Scanner

**Note**: All required dependencies (PHP_CodeSniffer and PHPCompatibility) are included
with the plugin – no additional setup required!

## FAQ

### What is this plugin for?

This plugin helps WordPress developers check if their custom code (plugins and themes)
will work with different PHP versions. It’s especially useful when planning to upgrade
PHP on production servers or when developing for clients with specific PHP version
requirements.

### Why won’t it work on my hosting provider?

Most managed hosting providers (WP Engine, Kinsta, SiteGround, etc.) disable the`
exec()` function for security reasons. This plugin needs to run PHP commands to 
analyze your code, which requires this function to be enabled.

### What PHP versions can I test against?

The plugin can test your code against PHP versions 7.4 through 8.4, helping you 
identify compatibility issues before upgrading.

### How accurate are the results?

Very accurate! The plugin uses the official PHPCompatibility ruleset, which is the
industry standard for PHP version compatibility testing. It catches both deprecated
features and breaking changes.

### Can I scan multiple plugins at once?

Yes! You can select multiple plugins and themes to scan simultaneously. The plugin
processes them in batches to manage memory usage efficiently.

### What if the scan takes too long?

The plugin includes stop/resume functionality. You can cancel a long-running scan
at any time and resume it later. You can also adjust batch sizes to optimize performance.

### Are my files modified during scanning?

No, your files are never modified. The plugin only reads your code to analyze it.
Any temporary files created during scanning are automatically cleaned up.

## Reviews

![](https://secure.gravatar.com/avatar/cc455d574f3c636bd49dc940220b9596f19b3a272cde46b29857a81b0a5540df?
s=60&d=retro&r=g)

### 󠀁[PERFECTION](https://wordpress.org/support/topic/perfection-122/)󠁿

 [batwaan](https://profiles.wordpress.org/batwaan/) March 25, 2026

Congratulations for this plugin, very helpfull for my php’s upgrades ! THANK YOU
❤️❤️

![](https://secure.gravatar.com/avatar/f1325f3136210788a33d5670a5f7967cefdea5959fb634333b23b1c086520145?
s=60&d=retro&r=g)

### 󠀁[Excellent!](https://wordpress.org/support/topic/excellent-14185/)󠁿

 [Artem Frolov](https://profiles.wordpress.org/dikiy_forester/) February 2, 2026

Good quality plugin and fast support! Super! Thanks!

 [ Read all 2 reviews ](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/)

## Contributors & Developers

“Eli's PHP Compatibility Scanner” is open source software. The following people 
have contributed to this plugin.

Contributors

 *   [ Eli Hanna ](https://profiles.wordpress.org/eliehanna/)

[Translate “Eli's PHP Compatibility Scanner” into your language.](https://translate.wordpress.org/projects/wp-plugins/eli-php-compatibility-scanner)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/eli-php-compatibility-scanner/),
check out the [SVN repository](https://plugins.svn.wordpress.org/eli-php-compatibility-scanner/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/eli-php-compatibility-scanner/)
by [RSS](https://plugins.trac.wordpress.org/log/eli-php-compatibility-scanner/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.1.1

 * Fix: scan overview tags no longer disappear after scan completes; selected targets
   and their results stay visible.

#### 1.1.0

 * Scan Overview UI Update

#### 1.0.5

 * Improved target selection: show Active badge for active plugins/theme; add Select
   All (toggle) and Select Active buttons.

#### 1.0.4

 * Fix “Namespace declaration statement has to be the very first statement” when
   running phpcs on some hosts (e.g. LiteSpeed): plugin now prefers the direct PHPCS
   script over the Composer proxy to avoid BOM/encoding issues in vendor/bin/phpcs.

#### 1.0.3

 * Fix “ERROR: The file 2>&1 does not exist” on macOS when PHPCS command runs without
   a shell (removed shell redirection from command string)
 * Fix PHP 8.1+ deprecation: trim() null parameter in PHP_CodeSniffer vendor (Common.
   php)
 * Tested on latest WordPress and WordPress Studio for Mac

#### 1.0.2

 * Updated plugin name to “Eli’s PHP Compatibility Scanner” for WordPress.org compliance
 * Improved documentation and usage instructions

#### 1.0.0

 * Initial release
 * PHP compatibility scanning using PHPCompatibility standard
 * Modern, responsive user interface
 * Batch processing for large codebases
 * Real-time progress updates
 * Stop/resume functionality
 * Vendor directory exclusion
 * Support for PHP versions 7.4-8.4

## Meta

 *  Version **1.1.1**
 *  Last updated **4 weeks ago**
 *  Active installations **100+**
 *  WordPress version ** 4.5 or higher **
 *  Tested up to **6.9.4**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/eli-php-compatibility-scanner/)
 * Tags
 * [code quality](https://twd.wordpress.org/plugins/tags/code-quality/)[compatibility](https://twd.wordpress.org/plugins/tags/compatibility/)
   [testing](https://twd.wordpress.org/plugins/tags/testing/)[wordpress development](https://twd.wordpress.org/plugins/tags/wordpress-development/)
 *  [Advanced View](https://twd.wordpress.org/plugins/eli-php-compatibility-scanner/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  2 5-star reviews     ](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/?filter=1)

[Add my review](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/reviews/)

## Contributors

 *   [ Eli Hanna ](https://profiles.wordpress.org/eliehanna/)

## Support

Issues resolved in last two months:

     2 out of 2

 [View support forum](https://wordpress.org/support/plugin/eli-php-compatibility-scanner/)