PHPackages                             php-component/di - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. php-component/di

ActiveLibrary[Framework](/categories/framework)

php-component/di
================

PHPComponent/DI is Dependency Injection container

0.2.6(8y ago)09BSD-3-ClausePHPPHP ~5.6

Since Sep 17Pushed 8y ago1 watchersCompare

[ Source](https://github.com/PHPComponent/DI)[ Packagist](https://packagist.org/packages/php-component/di)[ RSS](/packages/php-component-di/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (1)Dependencies (3)Versions (9)Used By (0)

PHPComponent\\DI
================

[](#phpcomponentdi)

DI is Dependency Injection container. It will build whole dependency tree of your application.

Configuration example
---------------------

[](#configuration-example)

You can configure container using PHP. For example you have class Translator, which have one constructor parameter `$default_language`.

```
class Translator
{
    /** @var string */
    private $default_language;

    public function __construct($default_language)
    {
        $this->default_language = $default_langauge;
    }
}
```

Then you configure Container.

```
$parameters = new \PHPComponent\DI\ParametersBag(array('default_language' => 'en'));
$container_builder = new \PHPComponent\DI\ContainerBuilder($parameters);
$container_builder->registerService('translator', Translator::class)
    ->setArguments(array('%default_language%'));
$translator = $container_builder->getService('translator');
```

When you call `getService('translator')` you will get Translator with default language en.

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~4 days

Total

8

Last Release

3179d ago

PHP version history (2 changes)0.1.0PHP &gt;=5.5

0.2.1PHP ~5.6

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/7384446?v=4)[František Šitner](/maintainers/sitner)[@sitner](https://github.com/sitner)

---

Top Contributors

[![sitner](https://avatars.githubusercontent.com/u/7384446?v=4)](https://github.com/sitner "sitner (12 commits)")

---

Tags

dependency-injectiondependency-injection-containerdependency-managerinversion-of-controldiioc

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/php-component-di/health.svg)

```
[![Health](https://phpackages.com/badges/php-component-di/health.svg)](https://phpackages.com/packages/php-component-di)
```

###  Alternatives

[nette/di

💎 Nette Dependency Injection Container: Flexible, compiled and full-featured DIC with perfectly usable autowiring and support for all new PHP features.

92641.2M1.5k](/packages/nette-di)[rdlowrey/auryn

Auryn is a dependency injector for bootstrapping object-oriented PHP applications.

7242.3M76](/packages/rdlowrey-auryn)[ray/di

Guice style dependency injection framework

1992.2M83](/packages/ray-di)[yiisoft/di

Yii DI container

2361.3M114](/packages/yiisoft-di)[bear/sunday

A resource-oriented application framework

251611.8k25](/packages/bear-sunday)[yiisoft/injector

PSR-11 compatible injector. Executes a callable and makes an instances by injecting dependencies from a given DI container.

943.2M46](/packages/yiisoft-injector)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
