How can dependencies be injected into PHP classes via constructors?

Dependencies can be injected into PHP classes via constructors by passing the dependencies as parameters when creating an instance of the class. This allows for better flexibility, testability, and separation of concerns in the codebase.

class DependencyExample {
    private $dependency;

    public function __construct(Dependency $dependency) {
        $this->dependency = $dependency;
    }

    public function doSomething() {
        // Use the injected dependency here
        $this->dependency->someMethod();
    }
}

// Usage
$dependency = new Dependency();
$example = new DependencyExample($dependency);
$example->doSomething();