~/talk

Upgrading Legacy to the Latest PHP Version

Talkat phpday 2024 · 2024-05-16..05-17· [php]

Claims a proven upgrade path for codebases up to four million lines, moving 5.3–5.6 to PHP 7 then 8 without feature-freeze by: running static analysis with PHPCompatibility and Exakat to get file/line issues, using eval3and4.org to compare runtime behavior, writing high-level characterization tests with Cypress, and shipping small polyfills or reimplementations (example: an each shim and the mcrypt-compat package) so the app keeps working while tests turn green and edge cases get fixed.

AI-written summary · about

  1. 0:00Upgrading legacy PHP code
  2. 2:53Compatibility issues with PHP
  3. 5:04Solutions for compatibility problems
  4. 7:42Exakat for compatibility checks
  5. 9:26Testing across PHP versions
  6. 12:20Handling removed functions like each()
  7. 15:11Upgrading dependencies
  8. 18:47Replacing discontinued extensions
  9. 24:35Migrating from MySQL to MySQLi/PDO
  10. 28:05High-level tests for legacy apps
  11. 32:37Cypress for integration testing
  12. 37:10Prioritizing features for upgrades
  13. 39:38Key takeaways for PHP upgrades
  14. 42:06Q&A: Going live with PHP versions
  15. 44:39Q&A: Rebuilding vs refactoring
  16. 46:53Q&A: Finding old PHP versions
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.