资讯专栏INFORMATION COLUMN

Facade---Laravel学习笔记

wall2flower / 1569人阅读

摘要:中的提供了对于类的更简便的访问方法。现在有一个类以下是这个类的的实现在通过访问相应的类时,实际上是通过返回的字符串去容器中查询该字符串绑定的所注册的类的实例。即可见,字符串通过中间的容器将与具体的类的实例联系了起来。

Laravel中的Facade提供了对于类的更简便的访问方法。在通过Facade访问类时,是不需要手动对类进行实例化的,对于类的所有可访问的方法(不管是是静态还是非静态方法),都可以采用访问静态方法的方式进行访问,即SomeObjectFacade::someMethod($parameters)

其实某个类的facade可以看作是具体的相关的类的实例的一个代理,而这个实例是在服务容器中注册的。

现在有一个类AppLearningTestBar:


以下是这个类的facade的实现:


在通过AppFacadesBar访问相应的类时,实际上是通过getFacadeAccessor返回的字符串"bar"去容器中查询该字符串绑定的所注册的类的实例。即

app->bind("bar", function () {
            return new AppLearningTestBar();
        });

        $this->app->alias("bar", "AppLearningTestBar");
    }
}

可见,字符串"bar"通过中间的容器将facade与具体的类的实例联系了起来。

最好,通过在config/app.php中将AppFacadesBar注册到aliases数组中,即

"Bar" => AppFacadesBar::class

就可以在Laravel应用中通过该别名而不需要特别引入就可以访问AppLearningTestBar实例的相关方法了,比如在某个类中调用test方法:Bar::test(),但不需要明显的引入AppLearningTestBar。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25828.html

相关文章

  • laravel-hprose(rpc框架)

    摘要:基于开发的扩展版本要求安装或者编辑配置在注册和无需手动注册配置文件监听地址列表,字符串格式数组是否启用方法,开启关闭,开启后将自动对外发布一个远程调用方法客户端可调用创建配置和路由文件应用根目录下的目录下会自动生成新文件 Laravel-hprose 基于 hprose/hprose-php 开发的Laravel扩展:laravel-hprose 版本要求 Laravel>=5.2 安...

    incredible 评论0 收藏0
  • ApacheCN 人工智能知识树 v1.0

    摘要:贡献者飞龙版本最近总是有人问我,把这些资料看完一遍要用多长时间,如果你一本书一本书看的话,的确要用很长时间。为了方便大家,我就把每本书的章节拆开,再按照知识点合并,手动整理了这个知识树。 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=200); 贡献者:飞龙版...

    刘厚水 评论0 收藏0
  • 【LNMPR源码学习笔记汇总

    摘要:此文用于汇总跟随陈雷老师及团队的视频,学习源码过程中的思考整理与心得体会,此文会不断更新视频传送门每日学习记录使用录像设备记录每天的学习源码学习源码学习内存管理笔记源码学习内存管理笔记源码学习内存管理笔记源码学习基本变量笔记 此文用于汇总跟随陈雷老师及团队的视频,学习源码过程中的思考、整理与心得体会,此文会不断更新 视频传送门:【每日学习记录】使用录像设备记录每天的学习 PHP7...

    Barrior 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<