Hypothetically speaking, what if you wanted to change all of the lightbulbs in your house to use LED bulbs, but your current wiring didn’t support LED bulbs? You would need to re-wire your house, which would take a long time. In the meantime, you wouldn’t have any working electricity. Is there a better way? What if there was an adapter that could transition LED to work with old wiring if necessary, or if the wiring was new, just work as usual? That’s a metaphor for how I figured out how to gradually upgrade a legacy (LAMP) code base to be compliant with PHP 7.0. Since PHP deprecated the MySQL extension functions as of PHP 5.5.0 and removed in 7.0, we needed to transition a LOT of code in a legacy system to use the modern MySQLi extension functions. In trying to figure out how to upgrade the code base without ceasing new development on the system, we decided to use an adapter database class to allow us to transition gradually. In this session, we'll explain how the adapter class works and also the rules we put in place to ensure there was an end to the transition tunnel.


Comments are closed.

John Fansler at 11:33 on 25 Oct 2017

Great points on how to talk clients into a gradual upgrade process and outlining How to go about it in a cross-compatible way. Could have used a little more content and possibly some additional technical pointers.

Alex Corbeil at 08:20 on 26 Oct 2017

Short, could use more content/research. Good comments on how to brings this up to client. mysql to mysqli is just hiding more problems and pushing them back later. Convert to PDO instead. Even more, use frameworks, not pure php for large projects. Make upgrading and development speed 10x faster.

Tim Ledlie at 10:05 on 27 Oct 2017

Very clear presentation, great answers to questions. Thanks for explaining your methodology!

Elli at 10:56 on 27 Oct 2017

Helpful presentation - will definitely try to use some of your approaches to getting our codebase over to 7.