Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Zend Di Laravel Package

zendframework/zend-di

zendframework/zend-di is a PHP dependency injection container for Zend Framework apps. It supports autowiring, configurable definitions, and factories to build and wire objects at runtime, helping manage dependencies and improve testability.

View on GitHub
Deep Wiki
Context7

Usage With zend-servicemanager

zend-di is designed to play and integrate well with zend-servicemanager. When you are using zend-component-installer, you just need to install zend-di via composer and you're done.

Service Factories For DI instances

zend-di ships with two service factories to provide the Zend\Di\InjectorInterface implementation.

  • Zend\Di\Container\ConfigFactory: Creates a config instance by using the "config" service.

  • Zend\Di\Container\InjectorFactory: Creates the injector instance that uses a Zend\Di\ConfigInterface service, if available.

use Zend\Di;
use Zend\Di\Container;

$serviceManager->setFactory(Di\ConfigInterface::class, Container\ConfigFactory::class);
$serviceManager->setFactory(Di\InjectorInterface::class, Container\InjectorFactory::class);

Abstract/Generic Service Factory

This component ships with an generic factory Zend\Di\Container\AutowireFactory. This factory is suitable as an abstract service factory for use with zend-servicemanager.

You can also use it to create instances with zend-di using an IoC container (e.g. inside a service factory):

use Zend\Di\Container\AutowireFactory;
(new AutowireFactory())->__invoke($container, MyClassname::class);

Or you can use it as factory in your service configuration directly:

return [
    'factories' => [
        SomeClass::class => \Zend\Di\Container\AutowireFactory::class,
    ],
];

Service Factory For AoT Code Generation

zend-di also provides a factory for Zend\Di\CodeGenerator\InjectorGenerator. This factory (Zend\Di\Container\GeneratorFactory) is also auto registered by the Module and ConfigProvider classes for zend-mvc and Expressive.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4