PHP Version
Checker
See which PHP version any website runs and whether it still gets security fixes. Or paste your code and find out which PHP versions it runs on.
1<?php2enum Status: string {3 case Active = 'active';4 case Eol = 'eol';5}6 7$label = match (Status::Eol) {8 Status::Active => 'Supported',9 Status::Eol => 'End of life',10};11 12echo $label;
A real result. Try your own code ↓
Most of the web runs PHP. Much of it is out of date.
An end-of-life PHP version keeps working, but gets no security fixes. The October 2026 PHP2Shell fixes never reached those sites.
of websites with a known server language run PHP
of PHP websites run a version that gets no security fixes
will be end of life after PHP 8.2 ends on Dec 31, 2026
days left of PHP 8.2 security support
Usage figures: W3Techs, Oct 26, 2026. End-of-life dates: php.net.
Which PHP versions does your code run on?
Paste a snippet and run it on seven real PHP builds at once, from 7.4 to 8.5. Syntax that older versions cannot parse, removed functions and new deprecations all show up in one table.
<?php
// Paste your code here, then check it against PHP 7.4 – 8.5.
enum Status: string
{
case Supported = 'supported';
case Eol = 'eol';
}
function label(?Status $status): string
{
return match ($status) {
Status::Supported => 'Still supported',
Status::Eol => 'End of life',
null => 'Unknown',
};
}
echo label(Status::Eol), PHP_EOL;
echo str_contains(PHP_VERSION, '8.') ? 'PHP 8 family' : 'Older PHP', PHP_EOL;
| Version | Syntax | Runs | Time |
|---|---|---|---|
| PHP 8.5.10 | – | – | – |
| PHP 8.4.25 | – | – | – |
| PHP 8.3.33 | – | – | – |
| PHP 8.2.33 | – | – | – |
| PHP 8.1.34 | – | – | – |
| PHP 8.0.30 | – | – | – |
| PHP 7.4.33 | – | – | – |
Click a version row to see its output.Runs entirely in your browser on official PHP source compiled to WebAssembly. Nothing is uploaded. Network access, databases and file uploads are not available.
Every PHP tool you reach for, in one place
Each tool runs in your browser, on the real PHP interpreter where code is executed.
PHP versions and support status
Every PHP branch gets two years of bug fixes and then security fixes only, until its end-of-life date. After that, no more patches, even for critical vulnerabilities.
| Version | Released | Active support until | Security fixes until | Status | Latest release |
|---|---|---|---|---|---|
| PHP 8.5 | Nov 20, 2025 | Dec 31, 2027 | Dec 31, 2029 | Active support | 8.5.12 |
| PHP 8.4 | Nov 21, 2024 | Dec 31, 2026 | Dec 31, 2028 | Active support | 8.4.27 |
| PHP 8.3 | Nov 23, 2023 | Dec 31, 2025 | Dec 31, 2027 | Security fixes only | 8.3.36 |
| PHP 8.2 | Dec 8, 2022 | Dec 31, 2024 | Dec 31, 2026 | Security fixes only | 8.2.35 |
| PHP 8.1 | Nov 25, 2021 | Nov 25, 2023 | Dec 31, 2025 | End of life | — |
| PHP 8.0 | Nov 26, 2020 | Nov 26, 2022 | Nov 26, 2023 | End of life | — |
| PHP 7.4 | Nov 28, 2019 | Nov 28, 2021 | Nov 28, 2022 | End of life | — |
Dates from php.net, checked Oct 26, 2026. Full EOL timeline and older versions →
Still on an old PHP version?
What changed, what breaks and how to upgrade, with examples you can run in the sandbox.
How to check your PHP version yourself
If the website checker cannot see the version, your server is hiding it. You can still read it from the inside with any of these methods.
Command line
Connect over SSH and run:
php -v
The first line shows the version, for example PHP 8.3.14 (cli). On servers with several versions, the web server may use a different one than the command line, so confirm with phpinfo().
phpinfo() file
Upload a file called info.php containing:
<?php phpinfo();
Open it in the browser and read the version at the top. Delete the file right after: it reveals your full server configuration.
WordPress
In the dashboard, open Tools → Site Health → Info and expand Server.
The “PHP version” line shows the exact release. WordPress also flags outdated versions on the Site Health status tab, and most hosts let you switch versions from their panel.
cPanel and Plesk
In cPanel, open MultiPHP Manager or Select PHP Version. In Plesk, open Websites & Domains → PHP.
Both show the version each domain uses and let you change it. Test a staging copy before switching a live site.
How the PHP version checker works
The website checker sends one ordinary request to the address you enter, follows up to five redirects, and reads only what any visitor receives. The strongest signal is the X-Powered-By: PHP/8.x.y header that PHP adds by default. Some Apache servers also include PHP/8.x.y in the Server header. When the version is hidden, we look for weaker signs that a site runs PHP at all: the PHPSESSID session cookie, WordPress or Drupal markers, and links to .php scripts.
Each result lists the evidence behind it. A version read from a header gets high confidence; “PHP detected, version hidden” means PHP is clearly in use but the number is not public. We then compare the version with php.net release data: support status, end-of-life date, and whether it predates the October 21, 2026 PHP2Shell security release.
One limit to keep in mind: Linux distributions such as Debian, Ubuntu and Red Hat often backport security fixes without changing the version number. A server reporting PHP 8.2.26 may have newer fixes applied. Treat an old patch number as a reason to ask your host, not as proof of a vulnerability.
The code compatibility checker works differently. It runs real PHP interpreters, built from the official source and compiled to WebAssembly, in your browser. For each version it parses your code with PHP's own parser, then executes it with all error reporting on and records fatal errors, warnings and deprecations. Because this is the real interpreter and not a list of rules, the result matches your server, as long as the code does not need extensions, files or network access a browser lacks.
Your site runs an old PHP version. What now?
Update your CMS, plugins and Composer packages first, then switch a staging copy to the new version with all error reporting on and fix the deprecations it reports. The upgrade guides for PHP 8.2, PHP 8.1 and PHP 7.4 list exactly what breaks, with examples you can run.
Frequently asked questions
How do I check the PHP version of a website?
Type the address into the PHP Version Checker at the top of this page. It requests the page the way a browser does and reads the public signals: the X-Powered-By and Server response headers, PHP's session cookie, and the CMS generator tag. If the server exposes its version, you get the exact number, its support status and its end-of-life date.
Why can't the checker find the PHP version of my site?
Most well-configured servers hide it. Setting expose_php = Off in php.ini removes the X-Powered-By header, and many hosts and CDNs strip it too. That is good practice, because it gives attackers less to go on. To see the version of your own site, use one of the inside methods on this page: php -v, a temporary phpinfo() file, WordPress Site Health or your hosting control panel.
How do I check which PHP version my code needs?
Paste the code into the compatibility checker above and press Check all versions. It parses and runs the code on real PHP builds from 7.4 to 8.5, then tells you the lowest version it works on. Syntax such as match (PHP 8.0), enum (8.1) or property hooks (8.4) fails to parse on older versions, and removed functions such as each() fail when the code runs.
Is my code uploaded anywhere?
No. The code checker and sandbox run PHP compiled to WebAssembly inside your browser tab. Your code never leaves your device. Only the website checker talks to our server, because a browser cannot read another site's response headers on its own; it receives the address you typed and nothing else.
Which PHP version should I use in 2026?
Use PHP 8.5 for new projects, and at least PHP 8.3 for existing sites. PHP 8.2 receives its last security fixes on Dec 31, 2026. PHP 8.1 and everything older are already end of life and no longer receive security patches.
Is it legal to check the PHP version of another website?
Yes. The checker only reads information that the server sends to every visitor, the same headers your browser receives when you open the page. It makes one normal request (plus redirects), does not probe for vulnerabilities and does not try to log in.
How do I check my PHP version in WordPress?
Log in to the dashboard and open Tools → Site Health → Info, then expand the Server section. The line “PHP version” shows the exact version, for example 8.3.14. WordPress also shows a warning on the Site Health status tab when the version is outdated.