Download the PHP package aicrion/container without Composer

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

Aicrion Container

A modern, high-performance, PSR-11 compatible Dependency Injection Container for PHP 8.5+, built for real-world dependency graphs — including circular dependencies — with a clean, pipeline-based resolution engine.

Why another container?

Existing containers (Symfony DI, PHP-DI, Laravel Container) are excellent, but they share a common limitation: constructor-only injection cannot cleanly solve circular dependency graphs without resorting to opaque proxy magic. Aicrion Container solves this natively with a lifecycle-based injection model:

  1. instantiate() — the object is created (constructor injection happens here).
  2. injectDependencies() — post-construction injection, safe for circular graphs.
  3. onReady() — a lifecycle hook fired once, after all injection is complete.

Features

Quick start

Solving circular dependencies

Documentation

Full documentation is available at https://aicrion.github.io/container-php/ and in the docs directory.

License

MIT © Hadi Akbarzadeh

Benchmarks

Aicrion Container was benchmarked against Symfony DependencyInjection, PHP-DI, and Laravel's Illuminate Container on the same PHP 8.5.8 machine (10,000 revs x 5 iterations per subject). Full methodology and raw output: benchmarks/RESULTS.md.

Live resolution (no ahead-of-time compilation):

Container Constructor injection Singleton lookup
Symfony DependencyInjection 0.195us 0.190us
PHP-DI 1.478us --
Laravel Illuminate Container 2.546us 0.316us
Aicrion Container 5.616us 1.510us

Compiled resolution (ahead-of-time optimization):

Container Constructor injection Singleton lookup
Symfony DependencyInjection (compiled) 0.183us 0.183us
Aicrion Container (compiled) 0.599us 0.283us

Compiling Aicrion Container's definitions delivers a ~9.4x speedup on constructor injection and ~5.3x on singleton lookups over live reflection-based resolution.

Run the benchmarks yourself:


All versions of container with dependencies

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

Loading the files please wait ...