PHP Upgrade Service
Move an application from an unsupported PHP version to a current PHP 8 release, with compatibility checks, tests around the risky parts and a rollback plan.
Why PHP upgrades get put off, and why they cannot be put off forever
Each PHP version receives active support and then security fixes for a limited period, after which it receives nothing. The official PHP supported versions page shows the current dates. Running an unsupported version means known vulnerabilities stay unpatched, newer libraries will not install, and sooner or later the hosting provider removes it.
Upgrades get delayed because they feel risky and invisible: a lot of work for the application to look exactly the same. Done properly, though, an upgrade is a well-understood, plannable piece of work.
What usually breaks
- Removed functions and extensions. The old mysql_* database functions, create_function, each() and other features removed in PHP 7 and 8.
- Stricter behaviour. PHP 8 turns many former warnings into errors and changes how strings and numbers are compared.
- Dependencies. Libraries pinned to old versions that do not support the new runtime, or that were abandoned years ago.
- Deprecations. Code that still works but logs deprecation notices, which become errors in a later version.
- Hidden assumptions. Date handling, rounding, character encoding and sorting that the business relies on without knowing it.
How the upgrade is done
Assessment
Static analysis and a review of the code and composer.json identify the incompatible patterns, the dependencies that need attention and the areas of highest business risk. You get a written summary with an estimate before committing to the full upgrade.
A copy on the new version
The application runs locally or on a staging server with the target PHP version, logging every error and deprecation. Nothing changes in production at this stage.
Tests where they count
Before changing behaviour-sensitive code, tests are written around it: totals, prices, stock movements, permissions and anything involving money. These protect the upgrade and remain useful afterwards.
Compatibility fixes and dependency updates
Code is updated in small, reviewable changes. Abandoned libraries are replaced. Where the application uses Laravel, the framework upgrade is planned alongside; see Laravel upgrades.
Cut-over and rollback
The switch happens at an agreed time, with the previous version ready to return to and close monitoring afterwards. Most upgrades are uneventful on the day because the hard work happened earlier.
Plain PHP, Laravel and other frameworks
The same approach applies to custom PHP with no framework, older frameworks, and Laravel applications. For very old or heavily tangled code, the upgrade is often the first stage of wider legacy PHP support or a gradual move to Laravel.
Getting a quote
Share the current PHP version, the framework if there is one, where it is hosted and, ideally, read access to the repository. A short assessment gives a fixed price or a well-bounded estimate. Pricing models are on PHP developer rates, and the hiring process is on hire a PHP developer.
Process
- Assess Current PHP version, extensions, dependencies and the code patterns that will break.
- Reproduce A local or staging copy on the target PHP version, with errors and deprecations logged.
- Fix and test Compatibility changes, dependency updates and tests around money, data and permissions.
- Switch and watch A planned cut-over with a rollback route and close monitoring afterwards.
Questions that usually come up
Why not just change the PHP version in the hosting control panel?
Because code that worked on the old version can fail on the new one: removed functions, stricter type handling and changed defaults. Testing first on a copy avoids discovering that in production.
How long does a PHP upgrade take?
It depends on the size of the code, how far apart the versions are and how many dependencies need replacing. An initial assessment gives a realistic estimate before any commitment.
Is a PHP upgrade the same as a Laravel upgrade?
No. A PHP upgrade changes the language runtime; a Laravel upgrade changes the framework. They are often linked, because newer Laravel versions require newer PHP, so they are planned together.
Can you upgrade WordPress or WooCommerce sites too?
Where the main issue is custom PHP code, plugins or themes that break on newer PHP, yes. Routine WordPress maintenance on its own is not the focus of this service.
What if a dependency has no compatible version?
Then it is replaced, forked or removed, and that decision is written into the plan with its cost and risk.
Qualification
Plan a PHP upgrade
Name, work email, and a short description of the application is enough. No discovery call theatre before I know whether I can actually help.
- UK businesses with a real Laravel (or legacy PHP) application
- Build, support, rescue, upgrade or integration work
- Reply from Oliver Burton, usually within one working day