Patch or Perish

Old code doesn't get safer. It gets exploited.

Every PHP version and framework release has a date after which it receives zero security patches. New CVEs keep being found – they just stop being fixed for you. This is the map of what is still protected and what is already a liability.

How old is your project, in human years?

Paste your composer.json, or a GitHub link to one. Fresh projects on the newest releases come out around 10. A long-abandoned legacy stack can hit 200.

57 versions tracked across the PHP runtime and its ecosystem
35 are end-of-life today – no security patches, ever
61% of all releases here already get zero fixes
12 on borrowed time: security-only, upgrade window closing

The runtime under everything. A PHP branch gets 2 years of active support, then 1 more of security-only fixes. Past that, the interpreter running your whole stack is unpatched.

elapsed supported security-only unpatched (EOL)
5.6
7.0
7.1
7.2
7.3
7.4
8.0
8.1
8.2
8.3
8.4
8.5
2014 2016 2018 2020 2022 2024 2026 2028 2030 today
Version Released Security ends Status today Known CVEs
5.6 Aug 2014 Dec 2018 End of life unpatched 2,851 days ~95
7.0 Dec 2015 Jan 2019 End of life unpatched 2,841 days ~50
7.1 Dec 2016 Dec 2019 End of life unpatched 2,516 days ~45
7.2 Nov 2017 Nov 2020 End of life unpatched 2,151 days ~40
7.3 Dec 2018 Dec 2021 End of life unpatched 1,780 days ~35
7.4 Nov 2019 Nov 2022 End of life unpatched 1,423 days ~35
8.0 Nov 2020 Nov 2023 End of life unpatched 1,060 days ~28
8.1 Nov 2021 Dec 2025 End of life unpatched 294 days ~22
8.2 Dec 2022 Dec 2026 Security only 70 days of fixes left ~14
8.3 Nov 2023 Dec 2027 Security only 435 days of fixes left ~9
8.4 Nov 2024 Dec 2028 Supported 801 days runway ~4
8.5 Nov 2025 Dec 2029 Supported 1,166 days runway ~1

What this costs you

An end-of-life version is not "old but fine". When a vulnerability is disclosed, supported branches get a patch the same day – your EOL branch gets a public exploit and nothing else. You are now the easiest target on the list.

Upgrading is cheaper than a breach, and far cheaper the sooner you do it. The gap between your version and the supported one only widens: each skipped release adds deprecations, behavior changes and a bigger jump later. Move to a line with a green runway above, and keep it there.

Approximate data. CVE counts are rounded aggregates per branch, not authoritative tallies; lifecycle dates follow published vendor policies and may be extended. Status and day counts are computed at render time against the server clock.