laravel接口请求模拟(Laravel 类和接口注入相关的代码)
类别:编程学习 浏览量:2676
时间:2021-10-05 00:09:34 laravel接口请求模拟
Laravel 类和接口注入相关的代码Laravel能够自动注入需要的依赖,对于自定义的类和接口是有些不同的。
对于类,Laravel可以自动注入,但是接口的话需要创建相应的ServiceProvider注册接口和实现类的绑定,同时需要将ServiceProvider添加到congif/app.php的providers数组中,这样容器就能知道你需要注入哪个实现。
现在自定义一个类myClass
namespace App\library;
|
class myClass { public function show() { echo __FUNCTION__ . ' Hello World' ; } } |
设置route
|
Route::get( 'test/ioc' , 'TestController@index' ); |
修改TestController
|
class TestController extends Controller { public function index(myClass $myClass ) { $myClass ->show(); } } |
访问http://localhost/test/ioc,能成功打印show Hello World。
修改myClass
|
class myClass implements like { public function play() { // TODO: Implement play() method. echo __FUNCTION__ . ' Hello Play' ; } } |
like接口
|
interface like { public function play(); } |
TestController
|
class TestController extends Controller { public function index(like $like ) { $like ->play(); } } |
如果还是访问上面的地址,会提示错误
|
Target [App\library\like] is not instantiable. |
对于接口注入,我们需要在对应的ServiceProvider的register方法中注册,并将对应的ServiceProvider写入config/app的providers数组中。
定义LikeServiceProvider
|
class LikeServiceProvider extends ServiceProvider { public function boot() { // } public function register() { // $this ->app->bind( 'App\library\like' , 'App\library\myClass' ); } } |
之后我们需要将LikeServiceProvider添加到config\app.php文件的providers数组中。
还是继续访问上述的地址,页面成功输出play Hello Play。
以上这篇Laravel 类和接口注入相关的代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
原文链接:https://blog.csdn.net/sweatOtt/article/details/55059633
您可能感兴趣
- laravel的验证规则(解决在Laravel 中处理OPTIONS请求的问题)
- laravel 验证规则(Laravel中正确地返回HTTP状态码方法示例)
- laravel接口请求模拟(Laravel 类和接口注入相关的代码)
- laravel开发api支持多少并发(laravel框架 api自定义全局异常处理方法)
- laravel数据库配置(Laravel如何同时连接多个数据库详解)
- laravel 数据库迁移(Laravel数据库读写分离配置的方法)
- laravel如何设置默认模块(Laravel框架控制器的middleware中间件用法分析)
- laravel框架怎么定时任务(laravel Model 执行事务的实现)
- phplaravel开发规范(Laravel解决nesting level错误和隐藏index.php的问题)
- laravel框架学习心得教程(Laravel5.7 Eloquent ORM快速入门详解)
- laravel服务提供者应用场景(Laravel如何创建服务器提供者实例代码)
- laravel接口规范(Laravel5.5 手动分页和自定义分页样式的简单实现)
- laravel 开发自定义组件(laravel实现上传图片并在页面显示的例子)
- laravel5.2模型返回数组(解决Laravel5.5下的toArray问题)
- laravel跨域设置(解决Laravel自定义类引入和命名空间的问题)
- laravel前后端分离模块化(laravel 实现划分admin和home 模块分组)
- 成都轨道交通13号线一期工程最新进展(成都轨道交通13号线一期工程最新进展)
- 越南没事(越南没事情做)
- 重庆旅游攻略(重庆旅游3-4天攻略最佳线路)
- 周杰伦演唱会门票(周杰伦演唱会门票多少钱一张2023)
- 焕然一新 成都轨道集团官方网站改版上线(成都轨道集团官方网站改版上线)
- 成都轨道交通19号线二期全线电通(成都轨道交通19号线二期全线电通)
热门推荐
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9