PHP-DI Symfony Bridge

Intégrer les définitions PHP-DI, et les packages l'utilisant dans vos application Symfonys.


Ce package fournit une intégration de PHP-DI avec Symfony. PHP-DI est un gestionnaire de dépendances pour PHP. Le Bridge fonctionne comme un Bundle Symfony pour définir, dans le Symfony Service Container, PHP-DI en tant que Factory pour les entrées dont il est responsable.

Contrairement au bridge officiel, ce bridge ne requière pas de personnalisation de Symfony, de son Kernel, ni du Symfony Service Container. Pendant la compilation du service container, toutes les entrées provenant de PHP-DI vont être référencé dans le container de Symfony.

Ce bridge implémente également la PSR Container interface (PSR-11) pour agir comme interface avec le Symfony Servoce Container vis à vis des définitions dans PHP-DI.

Le bridge va également automatiquement gérer l'accès aux paramètres définies dans PHP-DI depuis le Symfony Container.

PHP Di logo

Fonctionnalités


Bundle

S'utlise comme tout Symfony Bundle

Facile

Ne requière pas de personnalisation de Symfony

Transparent

Chaque container peut communiquer avec les autres

Universel

Permet l'utilisation de package universel avec votre Symfony

GitHub


Cloner le projet sur GitHub

Projet sous licence open source! Hébergé, développé et maintenu sur GitHub.


Voir le projet sur GitHub

Patreon


Supporter le projet sur Patreon

Ce projet est logiciel libre et le restera, mais son développement a un coût. Si vous l'appréciez et si vous souhaitez nous aider à le maintenir et à le faire évoluer. N'hésitez pas à nous supporter sur Patreon.


Supporter le p[rojet

Exemple



<?php

// Add to you `bundles.php` file
return [
//..
Teknoo\DI\SymfonyBridge\DIBridgeBundle::class => ['all' => true],
//..
];

// Create the file `di_bridge.yaml` in your config folder and put in

di_bridge:
definitions:
-
'list of PHP-DI definitions file, you can use Symfony joker like %kernel.project_dir%'
#example
- '%kernel.project_dir%/vendor/editor_name/package_name/src/di.php'
- '%kernel.project_dir%/config/di.php'
import:
#To make alias from SF entries into PHPDI
My\Class\Name: 'symfony.contaner.entry.name'