PHP Dependency Injection Container
Phinject is a simple dependency injection container, with extensible activation & injection strategies.
Composer is the only supported way of installing Phinject. From the root of your project, run the following command:
composer require aztech/phinject
- Compatible with the container-interop specification
- Compatible with delegate containers.
- YAML, JSON or PHP based configuration.
- Lazy-loading dependencies.
- Remote proxies (undocumented).
- Aliases (undocumented).
- Extensible configuration syntax (undocumented).
The documentation is available here.
We have a getting started guide, followed by more comprehensive documentation (although not yet exhaustive, but that will come):
- Injection types
- Lifecycle of objects
- Remote objects (TODO: Write documentation)
- Container interoperability (TODO: Write documentation).
- Extending the configuration syntax
Note All the documentation examples are written using a YAML based configuration, however, you can also use JSON or PHP configuration files. (TODO: Document usage of PHP & JSON config file)
This library is originally a fork on
oliviermadre/dic-it, available here.
Most of the core features have however been refactored or rewritten, enough that I felt it was time to re-brand this package, in order to both prevent confusion with the original package, and because I did not like the name.