Download the PHP package alanvdb/dependency-container without Composer

On this page you can find all versions of the php package alanvdb/dependency-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 dependency-container

Dependency Container

A PHP PSR-11 Dependency Injection System

Overview

This project provides a lightweight dependency injection system for PHP. It includes the following main components:

  1. LazyContainer: A container that lazily instantiates services.
  2. IterableLazyContainer: An extension of LazyContainer that implements the Iterator interface.
  3. ContainerFactory: A factory to create instances of LazyContainer and IterableLazyContainer.

This library is fully compatible with the PSR-11 standard, which defines a common interface for dependency injection containers. This ensures that your dependency injection containers are interoperable with other PSR-11 compliant libraries.

Installation

To install the dependency-container, you can use Composer:

Usage

LazyContainer

The LazyContainer class allows you to register services with a callable that will be invoked only when the service is requested. This provides lazy instantiation of services, which can improve performance by deferring the creation of services until they are actually needed.

Example

IterableLazyContainer

The IterableLazyContainer extends LazyContainer and implements the Iterator interface, allowing you to iterate over the registered services.

Example

ContainerFactory

The ContainerFactory class provides methods to create instances of LazyContainer and IterableLazyContainer.

Example

PSR-11 Compatibility

This project adheres to the PSR-11 Container Interface, ensuring that the LazyContainer and IterableLazyContainer classes conform to the standard. This allows for seamless integration with other libraries and frameworks that support PSR-11.

Key PSR-11 Methods

LazyContainer and IterableLazyContainer

These classes implement the following PSR-11 methods:

By adhering to PSR-11, these containers can be used wherever a PSR-11 compliant container is expected.

API Documentation

LazyContainer

Methods

IterableLazyContainer

The IterableLazyContainer inherits all methods from LazyContainer and implements additional methods from the Iterator interface:

ContainerFactory

Methods

Testing

To run the tests, use the following command:

The tests are located in the tests directory and cover the functionality of LazyContainer, IterableLazyContainer, and ContainerFactory.

License

This project is licensed under the MIT License. See the LICENSE file for details.


All versions of dependency-container with dependencies

PHP Build Version
Package Version
Requires psr/container Version ^2.0
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 alanvdb/dependency-container contains the following files

Loading the files please wait ....