8.1 released 25 November 2021, latest 8.1.34.
PHP 8.1 reached end of life on 31 December 2025.
What changed
PHP 8.1 added native enumerations, readonly properties, fibers, intersection types, the never return type, first-class callable syntax, and several smaller language and standard-library improvements. It also expanded deprecations, including many cases where null is passed to internal functions whose parameters are not nullable, making previously tolerated code more likely to emit warnings or require remediation before later upgrades.
What staying costs
PHP 8.1 has reached end of life, so defects and security vulnerabilities discovered in the runtime or bundled components no longer receive upstream fixes for this line. Remaining on it also increases migration risk: application code, dependencies, frameworks, extensions, and deployment images can accumulate compatibility gaps with maintained PHP releases, turning a controlled upgrade into a larger catch-up project.
What to do
Choose a currently maintained PHP target that is supported by the application framework, CMS, extensions, and hosting or container platform. Build a representative test environment, update Composer dependencies within their compatibility constraints, and run static analysis, unit tests, integration tests, and production-like smoke tests under the target runtime. Review PHP 8.1 deprecation output and the target version's migration notes, replace unsupported extensions or APIs, and deploy progressively with rollback capability and runtime error monitoring.
We can tell you what moving off PHP 8.1 involves.
What it takes to move off PHP 8.1 depends on what you built on it — the version you are on, how much depends on it, and how much of the work is mechanical. Leave your email with this version and we can tell you what that looks like for you.
Not sure yet? Get my plan
