Download the PHP
package minusfour/phpdicontainer without Composer
On this page you can find all versions of the php package
minusfour/phpdicontainer. It is possible to download/install
these versions without Composer. Possible dependencies are resolved
automatically.
Vendor minusfour Package phpdicontainer Short Description Simple DI Container License
GPL-2.0
FAQ
After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.
Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.
In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories.
In this case some credentials are needed to access such packages.
Please use the auth.json textarea to insert credentials, if a package is coming from a private repository.
You can look here for more information.
Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
To use Composer is sometimes complicated. Especially for beginners.
Composer needs much resources. Sometimes they are not available on a simple webspace.
If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
You can install it through composer. Through the CLI:
Don't forget to add the autoloader to your bootstrap file:
How to use
Start by specifying the class namespace:
Instantiate the container.
Register an injector. Assuming class A depends on class B.
And register the injector dependencies. In this case B.
To resolve a class, all you need to do is:
It will instantiate A and inject its dependencies through their injectors.
Note
The injector constructor takes three parameters. The first parameter must be the name of the class (or dependency), the third parameter is an array containing a list of dependencies (names must match first parameter). The second
parameter is an anonymous function that takes one parameter, the dependencies as an array of objects and is responsible for both instantiation and dependency injection.
The injector implementation borrows from pimple examples, mostly the anonymous function idea.
Exceptions note
$container->resolve() is responsible for throwing 2 kind of exceptions: MinusFour\DIContainer\InjectorNotFoundException and MinusFour\DIContainer\DependencyUnmetException. First only occurs if there's no injector for said class, second one is thrown when the container fails to find the injector of the dependency.
Composer command for our command line client (download client)This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free.Standard composer command
The package minusfour/phpdicontainer contains the following files
Loading the files please wait ....
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.