Dependency Injection
Dependency Injection (DI) is a design pattern where dependencies are provided from outside the class.
This improves testability and maintainability.
Example
Section titled “Example”class Database { public function connect() { echo "Connected to database"; }}
class UserRepository {
private Database $database;
public function __construct(Database $database) { $this->database = $database; }
public function save() { $this->database->connect(); echo "User saved"; }}
$db = new Database();$repo = new UserRepository($db);
$repo->save();