veejay/container

Dependency injection container

Installs: 5

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/veejay/container

1.0.0 2025-11-01 19:13 UTC

This package is auto-updated.

Last update: 2025-11-01 19:13:56 UTC


README

The simplest implementation of a dependency injection container with auto-wiring.

License: MIT Scrutinizer Code Quality

Installation

composer require veejay/container

Usage

Basic usage.

<?php

use Veejay\Container\Container;

interface SomeInterface {}
class SomeClass implements SomeInterface {}

$container = new Container;

// Class name style
$container->set(SomeInterface::class, SomeClass::class);

// Object style
$object = new SomeClass;
$container->set(SomeInterface::class, $object);

// Closure style (arrow function)
$container->set(SomeInterface::class, fn() => new SomeClass);

// Closure style (anonymous function)
$container->set(SomeInterface::class, function (Container $container) {
    return new SomeClass;
});

$service = $container->get(SomeInterface::class); // SomeClass