php依赖注入有什么用

控制反转(inversion of control,缩写为ioc),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(dependency injection,简称di)。

php依赖注入有什么用

通过配置改变依赖接口的实现,这也是依赖注入最基本和最核心的功能

灵活控制依赖实现的实例范围,单例、每个线程一个、每个请求一个等等

依赖的参数,依赖的依赖等管理

立即学习“PHP免费学习笔记(深入)”;

代码更加简洁、逻辑更加清楚

Mock方便测试方便(推荐学习:PHP编程从入门到精通)

总的来说就是把应用中的功能块与功能块之间,类与类之间的依赖关系通过一个统一的框架集中管理起来

一个简单的依赖注入的例子

请看如下代码:

s[$k]=$c; } function __get($k) { return $this->s[$k]($this); }}

登录后复制

有了container类之后我们可以怎样管理A与B之间的依赖关系呢,用代码说话吧:

container = $container;  }  public function doSomeThing()  {    //do something which needs class B    $b = $this->container->getB();    //to do  }}

登录后复制

再将B类注入到容器类中:

$c = new Container();$c->setB(new B());

登录后复制

还可以传入一个匿名函数,这样B类就不会在传入时就立即实例化,而是在真正调用时才完成实例化的工作:

$c = new Container();$c->setB(function (){  return new B();});

登录后复制

以上就是php依赖注入有什么用的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2155550.html

(0)
上一篇 2025年2月25日 06:33:53
下一篇 2025年2月21日 10:40:27

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • php一共有多少函数

    php的真正力量来自它的函数:它拥有超过1000个内建的函数。 PHP 用户定义函数 除了内建的 PHP 函数,我们可以创建我们自己的函数。 函数是可以在程序中重复使用的语句块。 立即学习“PHP免费学习笔记(深入)”; 页面加载时函数不会…

    2025年2月25日
    200
  • php一共几种数据类型

    在php程序中,数据类型可以分成3种:标量数据类型、复合数据类型(即将多个简单数据类型组合在一起,存储在一个变量名中)和特殊数据类型。 标量数据类型 标量数据类型包括以下几种。 (1)boolean:布尔型(推荐学习:PHP编程从入门到精通…

    2025年2月25日
    200
  • php获取一个月有几天

    给定一个月份,要求返回这个月有多少天。 方式有多种,第一种使用内置函数  cal_days_in_month:返回某个历法中某年中某月的天数(推荐学习:PHP编程从入门到精通) int cal_days_in_month ( int $ca…

    2025年2月25日
    200
  • php要有什么基础

    因为php目前主要做网络应用,也就是网站等;所以在学习php之前最好是系统的掌握html和css的具体使用方法。 他们是你做成网页的脸面,也是最接近用户的部分,所以必要的了解还是要有的。 开始时也不需学的很精通。在你PHP学习的过程中不断的…

    2025年2月25日
    200
  • php要掌握哪些东西

    很多人因自学php提出了一些这样的疑问,关于这个问题网上有很多相关资料及分享内容,但个人认为php的学习主要还是要靠兴趣,俗话说的好,爱一行才能干好一行! 学习php需要掌握的知识点内容,作为php工程师要掌握的七点技能: 1.Linux操…

    2025年2月25日
    200
  • php一个汉字几个字节

    字符的简介: 在js中,中文占两个字符,英文占一个字符; 在php中,不同编码下不相同,在GBK/GB2312编码下一个中文占2个字符,UTF-8/unicode编码下一个中文占3个字符; 推荐:《PHP教程》 php 字节 和字符  立即…

    2025年2月25日
    200
  • php学一个新框架需要多久

    如今的php框架层出不穷,我不是这方面的专家,甚至不能熟练地使用其中的一种,所以我不做推荐,也不想讨论哪些算是框架哪些不算框架。这里我要讨论的是如何才能更快地开始使用某个新的框架。 首先你当然必须选择一个框架,比如ZendFramework…

    2025年2月25日
    200
  • php验证码怎么实现

    验证码为全自动区分计算机和人类的图灵测试的缩写。是一种区分用户是计算机和人的公共全自动程序。 验证码主要应用场景:登录、注册确定前,发布、回复信息前,疑似机器请求时,做人/机器校验。 实现步骤: (1)生成底图; 立即学习“PHP免费学习笔…

    2025年2月25日
    200
  • php一共有几种启动模式

    php的几种常用启动模式: 1、CGI模式 CGI即通用网关接口(Common Gateway Interface),它是一段程序,通俗的讲CGI就象是一座桥,把网页和Web服务器中的执行程序连接起来,它把HTML接收的指令传递给服务器的执…

    2025年2月25日
    200
  • php一句话木马怎么上传

    一句话木马上传常见的几种方法: 1、利用00截断,brupsuite上传 利用00截断就是利用程序员在写程序时对文件的上传路径过滤不严格,产生0X00上传截断漏洞。假设文件的上传路径为http://xx.xx.xx.xx/upfiles/l…

    2025年2月25日
    200

发表回复

登录后才能评论