A heavily customised forum moved off PHP 5.6
A long-running community board with years of custom code, updated to run on PHP 7 and MySQL 8 before its host forced the change.
The objective
The board was on PHP 5.6, and the host was about to upgrade the live database to MySQL 8, which would have broken the site. Switching to PHP 7 already worked in part: the custom features the owner had added were fine, but the phpBB core underneath them had broken edit boxes and layout problems.
The deadline was the host's upgrade, not anything the client set.
What I did
I updated the phpBB core to a version that runs on PHP 7 and MySQL 8.
I went through the site customisations to find which ones leaned on the old core behaviour and reworked those. Several were non-standard enough that there was no upstream equivalent to fall back on.
I ran several rounds of testing with the owner, since the parts that break in an upgrade like this are usually the ones nobody thinks to check.
The result
The site was running on the new PHP and MySQL versions before the host's deadline, with its customisations still working.
“Good job on fixing/updating phpbb website, with some somewhat non-standard modifications that had to be handled. A few iterations of testing and all working well again, thanks.”