这篇文章主要介绍了thinkphp5.1框架容器与依赖注入,结合实例形式分析了thinkPHP5.1容器与依赖注入相关原理与使用技巧,需要的朋友可以参考下
本文实例讲述了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']);
}
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
沃梦达教程
本文标题为:thinkphp5.1框架容器与依赖注入实例分析
基础教程推荐
猜你喜欢
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- php array分组,PHP中array数组的分组排序 2022-08-01
- PHP命名空间简单用法示例 2022-12-01
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- PHP中的错误及其处理机制 2023-06-04
- 使用PHP开发留言板功能 2023-03-13