Dependency Injection mit PHP-DI

Wie man PHP-DI in SysVector verwendet.

SysVector verwendet die PHP-DI-Bibliothek zur Verwaltung der Dependency Injection. Dies ermöglicht es Ihnen, modulareren und testbareren Code zu schreiben.

Grundkonfiguration

Um PHP-DI zu konfigurieren, können Sie eine di-config.php-Datei mit den Definitionen Ihrer Abhängigkeiten erstellen:


use DI\ContainerBuilder;

return function (ContainerBuilder $containerBuilder) {
    $containerBuilder->addDefinitions([
        // Define your dependencies here
        ClientRepository::class => \DI\create(MySqlClientRepository::class),
    ]);
};
    

Verwendung

Um Dependency Injection in Ihren Klassen zu verwenden, übergeben Sie einfach die Abhängigkeiten über den Konstruktor:


class ClientService {
    private $clientRepository;
    
    public function __construct(ClientRepository $clientRepository) {
        $this->clientRepository = $clientRepository;
    }
    
    public function getClients() {
        return $this->clientRepository->findAll();
    }
}
    

Mit Dependency Injection können Sie Implementierungen einfach austauschen und Ihren Code entkoppelt und testbarer halten.





Kontakt

Wenn Sie an SysVector interessiert sind, kontaktieren Sie uns:

Spenden über PAYPAL

Wenn Sie die Entwicklung von SysVector unterstützen möchten, erwägen Sie eine Spende über PAYPAL an Donate via PayPal