Download the PHP package maplephp/container without Composer
On this page you can find all versions of the php package maplephp/container. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download maplephp/container
More information about maplephp/container
Files in maplephp/container
Package container
Short Description Container, Factories and dependency injectors with full PSR-11 support.
License Apache-2.0
Homepage https://wazabii.se
Rated 5.00 based on 1 reviews
Informations about the package container
Container, Factories and the dependency injector
PSR Container built for MaplePHP framework
Container, Factories and dependency injectors will help to make your PHP code more maintainable, flexible, and testable by reducing coupling between objects and centralizing the management of dependencies.
- Container
- Factory
- Dependency injector
- Event handler
Container
Containers allowing you to easily create and retrieve objects that are needed throughout your application.
If the constructor of "YourClass" contains unresolved class arguments, the dependency injector will attempt to automatically locate them for you. Read more under the headline dependency injector.
Factory
Factories can be used to create new instances of objects, rather than instantiating them directly in your code.
Dependency injector
Dependency injection is a technique for managing dependencies between objects in an application. Instead of creating objects directly in your code, you can pass them in as dependencies when you instantiate an object. This makes your code more modular and easier to test, as you can easily swap out dependencies for mock objects or other implementations.
You can use the Dependency injector just like create any other container, as long as you dont add arguments or try to access method, if you do that then it will automatically disable Dependency injector. It is design like this becouse it will load in all class reclusive into endlessly.
Take a look at this example
The above code will load YourClass and auto initialize the class Test.
Event handler
Initiate
Example 1 - (Callable)
Example 2 - (Bind to method)
Example 3 - (Add service to handler)
Set the namespace to the EventInterface.
Then extend a class with implements to the interface EventInterface and add the method resolve to that class. I am using a "Anonymous Function" bellow as an example just to show that EventInterface is required, you can use a regular class.