Patched

Two critical PHP remote code execution flaws (CVE-2026-109618, CVE-2026-109619) are fixed in PHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35. ForgeKit ships them out of the box.

← All guides

Guide · Last updated: October 2026

Does XAMPP Support PHP 8.5? Your Options on Windows

XAMPP for Windows stops at PHP 8.2, and PHP 8.2 stops getting security fixes at the end of 2026. Here is what you can actually do about it: upgrade PHP inside XAMPP by hand, move to something that ships newer PHP, or run old and new side by side.

The short answer

  • No, XAMPP doesn't support PHP 8.5. Its newest Windows build ships PHP 8.2.12, and there is no official build with PHP 8.3, 8.4 or 8.5.
  • XAMPP hasn't had a release since November 2023.
  • PHP 8.2 loses security support on 31 December 2026. After that, every PHP version XAMPP offers is past its end of life.
  • PHP 8.6 is due on 19 November 2026. There is no sign of an XAMPP build for it either.

You can swap a newer PHP into XAMPP yourself, and for a single project that can be fine. If you need more than one PHP version, or you'd rather not maintain the swap, it is probably time to look at something else.

Why XAMPP is stuck on PHP 8.2

The XAMPP downloads for Windows are 8.0.30, 8.1.25 and 8.2.12, all published on 21 November 2023. The newest one bundles Apache 2.4.58, MariaDB 10.4.32, PHP 8.2.12 and phpMyAdmin 5.2.1. Nothing newer has been released since.

That matters more every month, because of where those versions are in their lives:

  • PHP 8.0 and 8.1: already end of life.
  • PHP 8.2: security fixes only, ending 31 December 2026.
  • MariaDB 10.4: end of life since 18 June 2024.
  • PHP 8.5, by contrast, is supported until the end of 2029.

None of this means XAMPP stops working. It means new frameworks and packages will increasingly require a PHP version it doesn't ship, and the versions it does ship won't get security fixes.

Upgrading PHP inside XAMPP by hand

It can be done. Roughly:

  1. Stop Apache in the XAMPP Control Panel and back up the xampp\php folder.
  2. Download PHP 8.5 for Windows from php.net: the x64 Thread Safe zip. Apache's PHP module only exists in the Thread Safe build.
  3. Replace the contents of xampp\php with the new files.
  4. In xampp\apache\conf\extra\httpd-xampp.conf, make sure LoadModule points at php8apache2_4.dll in the new folder.
  5. Recreate your php.ini from php.ini-development and copy across the settings and extensions you had.
  6. Install the Visual C++ 2015–2022 redistributable if you don't already have it.

What usually goes wrong is Apache refusing to start. The common causes:

  • You downloaded the Non Thread Safe build, so php8apache2_4.dll doesn't exist.
  • The LoadModule path doesn't match the file name or folder.
  • Apache and PHP were built against Visual C++ runtimes that don't match.

Apache's own log, xampp\apache\logs\error.log, usually says which one it is.

There is also a catch that has nothing to do with errors: this replaces PHP 8.2 rather than adding to it. XAMPP runs one PHP version at a time, so any older project that needs 8.2 either comes along to 8.5 or needs a second copy of XAMPP.

Alternatives that run PHP 8.5 today

  • WampServer: the closest thing to XAMPP, and it offers PHP 8.5 as add-ons. Free.
  • Laragon: you download a PHP version into its bin\php folder and switch to it from the menu. One version is active at a time. Free for non-commercial use only; client work needs a paid licence.
  • Laravel Herd: PHP 7.4 to 8.5, and you can pin each site to a version. Built around Laravel. Databases, Redis and mail need Herd Pro, $99 a year.
  • ForgeKit (made by me): PHP 7.4 to 8.5 from its own catalogue, with several versions running at the same time. Free, including for commercial work.

For pricing, licensing and how each one handles PHP versions in more detail, see the full comparison of local PHP environments for Windows, or why I moved on from XAMPP.

Keeping PHP 8.2 and adding 8.5, at the same time

The usual reason people stay on XAMPP longer than they'd like is the old projects. One client site still needs PHP 8.2 (or 7.4), and the new project needs 8.5.

That's the problem I built ForgeKit for. Each PHP version runs in its own web server, and each site is attached to the one it needs, so the 8.2 site and the 8.5 site both keep running. Nothing is switched globally.

  • Your projects can stay where they are. You point a site at its existing folder.
  • XAMPP can stay installed. The only thing they can't share is port 80, so stop XAMPP's Apache while you try ForgeKit.
  • When PHP 8.6 comes out, I'll add it to ForgeKit as soon as the official Thread Safe Windows build is published. Until then, or for any other version, you can add an official PHP build yourself as a custom binary.

If you want to see how running several versions works underneath, without ForgeKit, this guide walks through it with plain Apache and Nginx.

Frequently asked questions

Does XAMPP support PHP 8.5?

No. The newest XAMPP for Windows (8.2.12, published November 2023) ships PHP 8.2.12. There is no official XAMPP build with PHP 8.3, 8.4 or 8.5.

Can I update PHP inside XAMPP myself?

Yes. Replace the xampp\php folder with the x64 Thread Safe build from php.net and point the LoadModule line in httpd-xampp.conf at php8apache2_4.dll. It replaces PHP 8.2 rather than adding to it, and Apache won't start if you use the Non Thread Safe build or the Visual C++ runtimes don't match.

When does PHP 8.2 stop getting security updates?

On 31 December 2026, according to php.net. After that, every PHP version XAMPP ships is past its end of life.

Will XAMPP support PHP 8.6?

There has been no announcement. PHP 8.6 is due on 19 November 2026, and XAMPP's last release was in November 2023.

Can I run PHP 8.2 and PHP 8.5 at the same time on Windows?

Not inside one XAMPP. You need separate web servers, each with its own PHP version. ForgeKit runs them side by side from one app, with each site attached to the version it needs.

Run PHP 8.5 on Windows without giving up 8.2

ForgeKit is a free, native Windows environment that runs several PHP versions side by side, each site on the one it needs, with every config and log visible.