DPC2023: How to eat an ElePHPant: How to modernize your legacy PHP Applications

Nikita Popov

Modernize your legacy PHP applications with actionable steps and best practices, from consolidating validation rules to using dependency injection and composer.

Key takeaways
  • Modernize legacy PHP applications in small steps, just like eating an elephant one bite at a time.
  • Consolidate all validation rules into a single file.
  • Usedependency injection to separate concerns and make code more modular.
  • Extract individual classes and functions and put them in their own files.
  • Use a front controller to manage routing and dependency injection.
  • Use composer for dependency management.
  • Keep configuration values in a separate file and use it to configure dependencies.
  • Extract a class map to organize and simplify code.
  • Use a PHP file to autoload classes, eliminating the need for manual inclusion.
  • Split presentation logic from business logic.
  • Create a separate function for each functionality, making it easier to manage complexity.
  • Use a secure pseudo-random number generator.
  • Use a configuration value either in the settings file or in the PHP file.
  • Declare all dependencies and use composer to manage them.
  • Create a dependency injection container to manage dependencies.
  • Keep the configuration file small and organized.
  • Use a single file for configuration values.
  • Use PHPStorm to inspect and analyze code.
  • Modernize legacy PHP applications to make them more efficient, secure, and maintainable.