Use dependency injection cleanly in PHP applications. Constructor injection, avoiding service locators, what to put in the container.