文档中的这个写法是强制转换吗?

在文档的绑定一节中有这样的代码

$this->app->bind('HelpSpot\API', function ($app) {
    return new \HelpSpot\API($app->make('HttpClient'));
});

这里的 new \HelpSpot\API($app->make('HttpClient')); 中的\HelpSpot\API()是什么意思,是把$app->make('HttpClient')生成的实例强制转换成\HelpSpot\API类的实例吗?

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

实例化 \HelpSpot\API() 类时传入参数类 $app->make('HttpClient'),这个参数取决于 \HelpSpot\API() 类中构造方法 __construct( 参数 ) 中的参数

3年前 评论
Agatha_killed_Sparky (楼主) 3年前
Su (作者) 3年前
讨论数量: 5

我明白了,就是new了一个 \HelpSpot\API 对象,$app->make('HttpClient') 对象是 \HelpSpot\API 类构造方法的参数而已。 这么说对吗

3年前 评论
随波逐流

哪里是什么强制转换啊, 这个就是 注入容器

3年前 评论

实例化 \HelpSpot\API() 类时传入参数类 $app->make('HttpClient'),这个参数取决于 \HelpSpot\API() 类中构造方法 __construct( 参数 ) 中的参数

3年前 评论
Agatha_killed_Sparky (楼主) 3年前
Su (作者) 3年前

这个具有延迟加载的效果 :eggplant:

3年前 评论

你理解的80%正确

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!