今天编程教程网小编给大家介绍一下关于php简单的DI注入方法,下面给大家看一下简单的依赖注入代码和高阶的依赖注入代码?
简单的依赖注入代码
<?php
class container
{
  private $adapter;
  
  public function __construct(adapter $adapter)
  {
    $this->adapter = $adapter;
  }
}
?>
高阶的依赖注入代码
<?php
class container
{
  public $instance = [];
  
  public function __set($name, $value)
  {
    $this->instance[$name] = $value;
  }
}
$container = new container();
$container->adapter = new adapter();
$container->autofelix = new autofelix();
?>
依赖注入的应用
<?php
class container
{
  public $instance = [];
  
  public function __set($name, $value)
  {
    $this->instance[$name] = $value;
  }
}
 
class adapter
{
  public $name = '我是调度器';
}
 
$container = new container();
$container->adapter = new adapter();
class autofelix
{
  private $container;
  
  public function __construct(container $container)
  {
    $this->container = $container;
  }
  
  public function who($class)
  {
    return $this->container->instance[$class]->name;
  }
}
 
$autofelix = new autofelix($container);
 
$who = $autofelix->who('adapter');
var_dump($who); //我是调度器
?>
依赖注入高阶优化
<?php
$container = new container();
$container->adapter = new adapter();
//高阶优化
$container = new container();
$container->adapter = function () {
  return new adapter();
};
?>
				 沃梦达教程
				
			本文标题为:php简单介绍DI注入方法
 
				
         
 
            
        基础教程推荐
             猜你喜欢
        
	     - php怎么判断一个数组中的元素是否完全属于另一个数组 2024-12-04
- php基于文本搜索的实例代码 2022-08-22
- php利用函数获取两个数组中不同元素的个数 2024-12-04
- php利用函数将二进制转为字符串的两种方法 2024-12-04
- 前端用PHP写简单的删除接口(三) 2024-12-04
- 掌握php六大关键字 2024-12-04
- php利用for语句和substr()函数怎么实现字符串的反转 2024-12-04
- php如何利用函数修改时差 2024-12-05
- 基于PHP+MySQL的简单聊天室思路与代码 2022-08-27
- PHP实现根据数组的值进行分组 2022-08-01
 
    	 
    	 
    	 
    	 
    	 
    	 
    	 
    	 
						 
				 
				 
				 
				