Welcome to

Mr.Xiong

Home / Laravel / 如何理解 Laravel 中的 guard 和 provide ?

如何理解 Laravel 中的 guard 和 provide ?

其实无论是 guard 还是 provide,你都可以理解为:某个特定功能的插件

Laravel 是老外的东西,讲究优雅,所以思维是把不同的东西弄成独立又好看的东西,还是说说官方这些东西的用法吧。。

Guard

正如这个次的中文含义一样,是守卫的意思,也就是看门的。。
他的作用是处理一个认证,来判断每个请求、调用是否是登录过,或者允许通过的,其实这个功能中间件也可以实现。但是,做为一个优雅的框架,自然有优雅的归类。
你可以把一个密码登录,创建一个 guard;微博登录,创建另一个 guard。任何你想要验证的登录形式,或者接口验证什么的,都可以封装成独立的Guard去调用。

Provide

至于 provide ,不是认证这里的专属,他是 Laravel 中比较基础核心的东西。官方翻译叫做服务提供者
他里面只有几个约定好的方法,大致是。运行这个服务的时候执行的 boot ,和注册这个服务的一些东西的 register 以及钩子什么的。主要用途就是为框架提供各种服务。
例如你创建了个格式化输出的服务,这个服务执行的时候会把输出的 json 里面的非字符型的值都转化为字符型。然后这个服务注册到输出对象下面,叫做 ShowMyJSON ,然后你就可以在输出的时候直接用了。

说了这么多,感觉你会听得一头雾水。Laravel 刚接触确实不好理解,慢慢就好了。就和组装机器人一样。需要啥,就装个啥到某个地方。

 
Finally,谢谢大家的阅读!祝每天开心~
版权声明:本文为博主半原创文章,未经博主允许不得转载。

赞赏

微信赞赏支付宝赞赏

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

雄心勃勃但谦卑温逊!

>> <<