PHP 8.3 End of Life: Key Dates, Risks & What to Do Next

php2shell patches (CVE-2026-109618 and CVE-2026-109619) for EOL PHP are out now. With sales replies slower than usual due to high demand, the fastest route to patched packages is to buy ELS for Runtimes online (opens in new tab). Read the patch FAQ

Go straight to an AI summary of this blog post instead

  • Summarize this post with Perplexity
  • Summarize this post with Gemini

Key Takeaways

  • PHP 8.3 reaches end of life on December 31, 2027, after which it receives no security updates or official support.
  • Running PHP 8.3 after EOL exposes your applications to unpatched vulnerabilities and growing security risk.
  • Upgrading to a newer PHP version is the safest path, but legacy code and dependencies often slow down migrations.
  • TuxCare’s Endless Lifecycle Support (ELS) keeps PHP 8.3 patched after EOL while you upgrade on your own timeline.

PHP 8.3 reaches end of life on December 31, 2027. After that date, the PHP project stops issuing security patches for this version. Any CVE disclosed against PHP 8.3 after EOL becomes a permanent, unresolvable vulnerability on every server still running it – and that’s not a hypothetical. The gap between knowing an upgrade is needed and actually completing it is exactly where organizations get burned.

This post covers what PHP 8.3 EOL means in practice, what actually happens to your production environment once support ends, and the options available to keep your PHP infrastructure secure and compliant.

Understanding the PHP Support Lifecycle

In March 2024, the PHP project extended its release cycle from three years to four. Each branch now receives two years of active support, followed by two years of security-only support, before reaching end of life.

  • Active support: For the first two years after release, the PHP project ships bug fixes, security patches, and general maintenance updates. This is full-coverage support.
  • Security-only support: Once active support ends, the branch receives an additional two years of limited attention – only confirmed, critical security vulnerabilities get patched. Nothing else.
  • End of life: No security fixes of any kind. The version is abandoned upstream.

php currently supported versions

This lifecycle pattern shapes web security, compliance posture, and maintenance planning in equal measure. The consistent mistake is treating EOL as a future problem – by the time the date arrives, you’re already behind. The same dynamic plays out across the stack; it’s worth understanding how it affects operating system end-of-life situations as well.

PHP 8.3 End of Life: Key Dates & Considerations

PHP 8.3 was released on November 23, 2023. Here’s the full support timeline:

Milestone

Date

PHP 8.3 Released

November 23, 2023

End of Active Support

December 31, 2025

End of Security Support (EOL)

December 31, 2027

Active support ended on December 31, 2025 – which means PHP 8.3 is already in its security-only window. If you’re running it today, you’re already in reduced-support territory, and the clock to full EOL is running.

The urgency here mirrors what teams faced with PHP 7.4 EOL, PHP 8.2 EOL, and PHP 8.1 EOL, same dynamics, different version number. The broader PHP EOL landscape across versions makes one thing clear: this isn’t a one-time situation to survive, it’s a recurring operational pattern worth building a process around.

Plan Trigger: If your upgrade timeline can realistically complete before December 2027, the time to start is now. If it can’t – whether due to legacy dependencies, application complexity, or resource constraints – read the solutions section before making any decisions.

What Happens When PHP 8.3 Reaches EOL?

After the EOL date, the PHP project closes the book on 8.3. No patches, no advisories, no backports. A critical remote code execution vulnerability gets discovered in late 2027 and impacts PHP 8.3? That’s your problem to solve without any upstream help. Here’s what that actually looks like on the ground.

php 8.3 end of life risks explained

Unpatched Vulnerabilities Stack Up with No Fix Path

PHP vulnerabilities don’t stop being discovered after EOL. Researchers still find them, still publish them – they just stop getting fixed in 8.3. Your environment’s exposure grows over time with no mechanism to reduce it.

Operationally, it plays out like this: your vulnerability scanner flags PHP 8.3 as EOL and starts associating unpatched CVEs with it. Initially, the list is short. Six months in, it’s longer. A year in, some of those CVEs have public exploit code integrated into automated scanning tools – which shifts exploitation from targeted to opportunistic. Attackers running broad PHP exploit scans don’t need to know anything about your specific application.

A mid-sized SaaS running a legacy PHP 8.3 codebase a year post-EOL isn’t a hypothetical risk scenario. It’s a server that appears in scan results with known, unpatched vulnerabilities and no fix available. Your security team spends time triaging issues they can’t remediate. Your risk register carries a permanent open finding. That’s the actual operational cost.

Compliance Frameworks Will Flag It

PCI DSS, SOC 2, HIPAA, ISO 27001 – all of them require keeping software protected from known vulnerabilities. Running EOL PHP is a direct, documentable violation under most of those frameworks, and compliance automation tools will surface it without anyone having to look for it. When your next security audit comes around, the auditor will ask for your remediation plan.

“We’re aware and working on it” only holds for so long. In regulated industries, an EOL software in production can delay compliance certification renewals and surface in vendor security questionnaires. For companies selling to enterprise customers who require SOC 2 or PCI DSS documentation, it can become a deal-blocker.

You can also explore how vendors handle security patches and audit requirements in our detailed guide on PHP extended support.

Bugs and Regressions Are Yours to Own

After EOL, any problem you hit in PHP 8.3 is yours to debug without upstream help. A breaking behavior in an edge case that would have been patched in an active version? No fix is coming. A performance regression from a library interacting badly with the runtime? Track it down yourself.

This compounds over time. Engineering hours get spent debugging issues that would have been one-line patches upstream. Workarounds accumulate in the codebase. The behavioral gap between PHP 8.3 and documented PHP behavior widens as patches land in newer versions with no backport. Over 18–24 months post-EOL, that maintenance burden makes eventual migration meaningfully harder and more expensive than it would have been earlier.

Why Upgrading PHP 8.3 Is More Complex Than It Looks

Upgrading to the next supported version is the right call – that’s not in question. What’s worth addressing directly is why so many teams end up running EOL PHP in the first place, because it’s rarely laziness. The blockers are real.

Dependency Compatibility

Any non-trivial PHP application has a dependency chain: frameworks, libraries, CMS plugins, internal packages. Not all of them track active PHP releases. The further you get from a modern, well-maintained framework, the worse this gets.

A Laravel application with first-party dependencies will probably migrate cleanly. A 200,000-line custom PHP codebase built on a framework that went unmaintained in 2019 – or a WordPress stack with 40 plugins of varying maintenance quality – requires a full dependency audit before you can even estimate the migration scope. And that audit reliably surfaces blockers that weren’t obvious at the start.

You can also explore best practices for securing PHP frameworks in our detailed guide on Laravel security.

The pattern is consistent: teams run an initial compatibility check, find and fix the obvious issues, run another check, find more, and realize the migration is a three-month project they thought would take a week. Outdated dependencies alongside an EOL runtime don’t just coexist – they amplify each other’s risk.

Application Code Changes Required

PHP 8.4 introduced deprecations and behavior changes that will break code that ran cleanly on 8.3 – implicitly nullable parameters, certain array function behaviors, and some internal API surfaces changed in ways that require explicit code updates, not just a runtime version bump.

For a team with a modern codebase, active test coverage, and static analysis already in CI, this is manageable: run Rector, fix what it surfaces, validate against your test suite, deploy. For a team with a legacy codebase, low coverage, no static analysis tooling, and a small engineering org trying to ship product features simultaneously – this is a genuine resource conflict. You can’t safely migrate what you can’t adequately test.

Even after addressing all flagged deprecations, you need confidence that production behavior hasn’t silently changed. That confidence requires tests. Missing that coverage is what turns a planned migration into an incident.

Timing and Operational Risk

Production PHP version upgrades carry real risk. Even well-tested migrations have introduced unexpected behavior at runtime – edge cases that didn’t surface in staging, high-volume path issues, third-party integrations behaving differently under a new runtime version.

A 40-person SaaS team in the middle of a major feature release cycle can’t easily absorb that risk. EOL deadlines don’t align with sprint cycles or quarterly business commitments. The result is deferral – “we’ll do it next quarter” – until the deadline is close enough to force a rushed migration under pressure. That’s the worst possible time to execute a version upgrade.

Key Solutions for Managing PHP 8.3 End of Life

There’s no universal answer. The right path depends on your codebase complexity, team capacity, risk tolerance, and how much runway you have before December 2027. These are your three realistic options, ordered from most immediate to longest-term.

Decision Frame:

  • If your team can complete a full upgrade before EOL, go straight to Solution #2.
  • If your timeline is uncertain or extends past EOL, start with Solution #1 while executing Solution #2 in parallel.
  • If your application has structural debt that makes a PHP 8.4 migration nearly as expensive as a rewrite, evaluate Solution #3 before committing resources.

Solution 1: Use Endless Lifecycle Support

TuxCare’s Endless Lifecycle Support (ELS) for PHP provides backported security patches for PHP 8.3 after the official EOL date. It keeps your environment patched and your CVE list manageable while you work through migration on your own schedule – without forcing a rushed upgrade under deadline pressure. TuxCare’s PHP ELS covers an extensive list of end-of-life PHP versions in both Windows and Linux systems: 5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2, 8.3, and 8.4 (when it too reaches end of life).

This is the right option if your upgrade realistically won’t complete before December 2027, if you have a complex codebase that needs careful incremental migration work, or if you need to maintain a defensible security and compliance posture during the transition period.

ELS is not a permanent answer – you still migrate eventually. But it closes the window where you’d otherwise be running unpatched PHP in production with a growing list of unfixed CVEs and no remediation path.

Visit our CVE Tracker to view vulnerabilities affecting end-of-life PHP versions and check whether patches are available through TuxCare’s ELS.

php els cve tracker tuxcare

Solution 2: Upgrade to PHP 8.4 or PHP 8.5

PHP 8.5 is a solid upgrade target with active support running through December 2029. PHP 8.4, the next release branch directly after version 8.3, is supported until December 2028. Either gives you full upstream support – security updates, bug fixes, and maintenance – that PHP 8.3 no longer provides.

Practical steps to follow:

  • Run php -l across your codebase to catch syntax errors
  • Use Rector to auto-remediate deprecation patterns where possible
  • Audit your dependency tree for blocking compatibility issues
  • Run your full test suite against the new runtime before any production rollout
  • Stage the migration where you can – not everything needs to go at once

Start this now if you haven’t. The teams that do it right are the ones who started with enough runway to be methodical. The ones who get burned are the ones who start in Q3 2027 trying to execute under deadline pressure with no room for the unexpected.

Solution 3: Evaluate a Full Rewrite or Framework Migration

If upgrading to PHP 8.4 would require significant rewrites anyway, it’s worth running an honest cost comparison: targeted PHP migration versus a broader architectural investment in another runtime. This isn’t the right call for every team – but for applications where the PHP version problem is one symptom of deeper technical debt, EOL can be the forcing function that finally justifies the larger project budget.

Don’t let EOL urgency push you into an expensive migration that leaves the underlying maintenance burden intact. If you’re going to spend significant engineering time on this, make sure you’re buying future leverage, not just buying time.

Keep Your Systems Secure After PHP 8.3 EOL with TuxCare

PHP 8.3 EOL is a deadline you can plan around. The teams that get into trouble are the ones who treat it as someone else’s future problem until it becomes their current emergency.

If you need more runway to migrate properly, TuxCare’s Endless Lifecycle Support keeps PHP 8.3 patched and audit-ready while you work through the upgrade on a realistic timeline. And if you’re managing EOL exposure across multiple parts of your stack, TuxCare’s ELS extends to a wide range of languages and libraries – including .NET, Node.js, Angular, React, and Vue – for teams dealing with the same problem across frameworks.

FAQs

Can you still run PHP 8.3 after its end of life?

Yes, PHP 8.3 will still run after its end of life, but it will no longer receive security updates after December 31, 2027. This means any new vulnerabilities will remain unpatched unless you use extended security support from providers like TuxCare.

What should you upgrade to after PHP 8.3?

Upgrade to the latest supported PHP version available at the time of migration. PHP releases a new version annually, so newer supported versions (such as PHP 8.4, PHP 8.5, or later) will be available before PHP 8.3 reaches end of life.

How do I check which PHP version my server is running?

If you are operating within a web environment, creating a simple file with the phpinfo() function will provide a comprehensive look at your version alongside your build configurations. Additionally, if you use a hosting control panel, the active PHP version is usually visible in your account PHP settings.

Do hosting providers automatically upgrade PHP versions after EOL?

Sometimes – but not in a way you should rely on. Some managed hosts force upgrades, which can break legacy applications or custom code without warning. Others leave EOL versions available for you to manage or push paid “extended support” add-ons. Always verify your provider’s policy and plan upgrades yourself.

Summary
PHP 8.3 End of Life: Key Dates, Risks & What to Do Next
Article Name
PHP 8.3 End of Life: Key Dates, Risks & What to Do Next
Description
Learn PHP 8.3 end-of-life dates, support timelines, risks, and what actions to take to stay secure after PHP 8.3 reaches EOL.
Author
Publisher Name
TuxCare
Publisher Logo

Join 4,500+ Linux & Open Source Professionals!

2x a month. No spam.

Table of Contents
Get the open-source security answers you need

Join 4,500+ Linux & Open Source Professionals!

2x a month. No spam.