This document discusses the history and current state of dependency injection (DI) in PHP. It provides an overview of DI principles and frameworks that have supported DI over the years such as Spring Framework, Symfony, and Zend Framework. The document then demonstrates how to implement DI using the Zend\Di and Symfony containers through examples of constructor injection, setter injection, interface injection and more.