欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

thinkphp5.1框架容器与依赖注入实例分析

程序员文章站 2023-11-09 20:33:16
本文实例讲述了thinkphp5.1框架容器与依赖注入。分享给大家供大家参考,具体如下: 容器----/thinkphp/library/think/container....

本文实例讲述了thinkphp5.1框架容器与依赖注入。分享给大家供大家参考,具体如下:

容器----/thinkphp/library/think/container.php

依赖注入:将对象类型的数据,以参数的方式传到方法中(解决向类中的方法传对象的问题)

绑定一个类到容器:

public function bindclass()
{
  //把一个类放到容器中:相当于注册到容器中
  \think\container::set('tmp(别名)','\app\common\temp(实例)');
  //助手函数bind();
  bind('tmp(别名)','\app\common\temp(实例)');
  //将容器中的类实例化并取出来用:实例化的同时调用构造器进行初始化
  $tmp = \think\container::get('tmp',['name' => 'you']);
  $tmp = app('tmp',['name' => 'you']);//助手函数
  return $tmp->getname();
}

绑定一个闭包到容器:

public function bindclosure()
{
  //把一个闭包放到容器中
  \think\container::set('demo',function($domain) {
    return '域名:' . $domain;
  });
  //将容器中的闭包取出来用
  return \think\container::get('demo',['domain' => 'www.php.cn']);
}