web建站教程
     
  1. 首页
  2. 前端UI组件库
  3. AI项目和框架
  4. AIGC工具
  5. 百度echarts
  6. 地图大全
  7. 前端知识
  8. 更多
    vuejs
    js入门
    php入门
    mysql
    wordpress
    织梦cms
    帝国cms
    git教程
    IT知识
    模板大全
    休息站
    AI应用

php简单介绍DI注入方法

1065 ℃

今天web建站小编给大家介绍一下关于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如何利用逗号分隔将字符串转换为数组

php如何利用函数删除数组中指定项

php报call stack错误的解决方法

php入门知识:介绍php的三种跳转方式

php利用微信小程序实现pdf文件的预览功能

标签: php php入门 php问答 Private Public

上面是“php简单介绍DI注入方法”的全面内容,想了解更多关于 php入门 内容,请继续关注web建站教程。

当前网址:https://ipkd.cn/webs_2312.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

当前位置: 首页 > php入门
Trae:新一代免费的AI编程工具

呱呱工具箱

一款免费的在线小工具,无需下载,打开即可使用!呱呱工具箱

在线育儿补贴计算器

快来看看你到底可以领到多少补贴!生活小工具
上一篇:
下一篇:
x 打工人ai神器