Download the PHP package kyrill/php-di-container without Composer

On this page you can find all versions of the php package kyrill/php-di-container. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

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.
Please rate this library. Is it a good library?

Informations about the package php-di-container

php-di-container

A simple automatic dependency injection container implemented in PHP.

Installation

To install this package, run the following command in your project root:

Usage

Create a container

You can create a container by instantiating the Container class.


Register a class

You don’t have to register classes manually. All classes will be automatically resolved unless the constructor has an argument that is not a class.

Register a class with a function

You can register a class with a function by assigning it a unique name and providing a 'ClassDefinition' with constructor arguments, the class namespace, and whether it should be treated as a singleton (default is false). If no arguments are needed, you can pass an empty array.

Register classes by a file

You can create a JSON file with the following structure to register classes, aliases, or interfaces:

You can use aliases to register classes or interfaces. Aliases are useful if you want to use a class or interface with a different name. For aliases and interfaces you have to use the class key. The arguments key is optional. If you want to use a class or interface without arguments.

Register file

To register the file you need to make a ClassRegistar class. You can register the file by using the registerFile function. By default, there is a JsonFileReader class. This class reads a json file and registers the classes or interfaces. But you can make your own FileReader class.

Make Your Own FileReader

To create your own FileReader class, implement the FileReaderInterface. This interface defines a single method: readFile(). The method must return an array of classes, aliases, or interfaces.

The file must start with the keyword services, and all classes, aliases, or interfaces should be listed under it.


Get a Class

You can retrieve a class using the resolve function. To resolve an alias, pass the alias namespace as a string, like this: 'namespace\\alias'.

License

This project is licensed under the MIT License - see the LICENSE.md file for details


All versions of php-di-container with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
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 kyrill/php-di-container contains the following files

Loading the files please wait ....