Thanks to visit codestin.com
Credit goes to github.com

Skip to content

bakhtiyor/dependency-injection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is a Dependency Injection

Dependency Injection is where components are given their dependencies through their constructors, methods, or directly into fields.

Constructor Injection

class User
{
    function __construct($storage)
    {
        $this->storage = $storage;
    }
    
    // ...
}

Setter Injection

class User
{
    function setSessionStorage($storage)
    {
        $this->storage = $storage;
    }
    // ...
}

Property Injection

class User
{
    public $sessionStorage;
}
    
$user->sessionStorage = $storage;

As a rule of thumb, constructor injection is best for required dependencies, like in our example, and setter injection is best for optional dependencies, like a cache object for instance.

Installation

  • git clone https://github.com/bakhtiyor/dependency-injection
  • cd dependency-injection
  • composer install
  • php example/di-test.php

Credit

http://fabien.potencier.org/what-is-dependency-injection.html

About

A simple implementation of a Dependency Injection Container in PHP

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages