thinkphp框架案例(thinkphp5.1框架容器与依赖注入实例分析)
类别:编程学习 浏览量:2872
时间:2022-03-29 03:58:44 thinkphp框架案例
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框架的PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/qq_42176520/article/details/90599157
您可能感兴趣
- thinkphp5.1修改(ThinkPHP 5.1 跨域配置方法)
- thinkphp静态怎么设置(浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法)
- thinkphp5框架怎么打开(thinkphp5.1框架模板布局与模板继承用法分析)
- thinkphp继承model如何使用(Thinkphp5.0 框架使用模型Model添加、更新、删除数据操作详解)
- thinkphp5设计权限(Thinkphp5.0 框架视图view的比较标签用法分析)
- php微信支付怎么做(ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解)
- thinkphp框架多文件上传完整代码(Thinkphp5 自定义上传文件名的实现方法)
- 如何用thinkphp框架来写一个网站(php tpl模板引擎定义与使用示例)
- thinkphp远程代码执行教程(ThinkPHP 5.x远程命令执行漏洞复现)
- thinkphp返回json(thinkphp5框架实现数据库读取的数据转换成json格式示例)
- thinkphp框架案例(thinkphp5.1框架容器与依赖注入实例分析)
- thinkphp3.2.3 接口开发(ThinkPHP3.2.3框架Memcache缓存使用方法实例总结)
- vuephp后台开发框架(Vue+thinkphp5.1+axios实现文件上传)
- thinkphp前后端配合(thinkPHP+LayUI 流加载实现功能)
- thinkphp框架切换数据库(ThinkPHP3.2.3框架实现执行原生SQL语句的方法示例)
- thinkphp5框架怎么打开(thinkphp5.1框架中容器Container和门面Facade的实现方法分析)
- 蒜苔和鱿鱼尾巴一起炒,味道特别棒,又脆又嫩,有滋又有味(蒜苔和鱿鱼尾巴一起炒)
- 鱿鱼炒蒜苔不是黑暗料理,这样做清香扑鼻,鲜美脆嫩,开胃又下饭(鱿鱼炒蒜苔不是黑暗料理)
- 蒜苔炒鱿鱼(蒜苔炒鱿鱼)
- 远离 五毛食品 洛阳80后妈妈发明的 飞行棋 成校园爆款 玩具(远离五毛食品)
- 失传的古代飞行棋游戏 六博(失传的古代飞行棋游戏)
- 感冒要吃什么药(猫咪感冒要吃什么药)
热门推荐
- oracle中decode函数
- angularjs使用指令(详解Angular路由动画及高阶动画函数)
- python的def命令参数(python ddt数据驱动最简实例代码)
- mysql的uuid说明(MySQL GTID全面总结)
- centos7rabbitmq怎么装(如何在centos上使用yum安装rabbitmq-server)
- navicat注册和激活码(Navicat12.1系列破解激活教程亲测有效)
- mysql查询性能优化详解(实例讲解MySQL 慢查询)
- springbootvue项目代码(Vue+SpringBoot实现支付宝沙箱支付的示例代码)
- docker容器启动失败怎么查找原因(解决docker安装后运行hello-world报错的问题)
- tomcat是异步非阻塞吗(浅谈Tomcat如何打破双亲委托机制)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9