Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 这被认为是Laravel中的一种定制门面方法吗?_Php_Laravel_Laravel 5_Laravel 5.1_Laravel Facade - Fatal编程技术网

Php 这被认为是Laravel中的一种定制门面方法吗?

Php 这被认为是Laravel中的一种定制门面方法吗?,php,laravel,laravel-5,laravel-5.1,laravel-facade,Php,Laravel,Laravel 5,Laravel 5.1,Laravel Facade,我有一个功能,可以通过给定的令牌(字符串)标识访问。如果提供了有效的令牌,则应使用有效条目填充会话(使用SessionInterface)。我已经设置了我的VerifyToken中间件,并希望使用一种类似于警卫的方法来验证令牌和存储会话 我的问题是,这种类型的功能是否被认为是Laravel中的一种外观?若有,;存储这些文件的合适位置是什么(例如,app\Facades,以及存储接口的app\Facades\Contracts)Laravel中的Facade只是解决服务容器绑定的一种方法 因此,对

我有一个功能,可以通过给定的令牌(字符串)标识访问。如果提供了有效的令牌,则应使用有效条目填充会话(使用
SessionInterface
)。我已经设置了我的
VerifyToken
中间件,并希望使用一种类似于警卫的方法来验证令牌和存储会话


我的问题是,这种类型的功能是否被认为是Laravel中的一种外观?若有,;存储这些文件的合适位置是什么(例如,
app\Facades
,以及存储接口的
app\Facades\Contracts

Laravel中的Facade只是解决服务容器绑定的一种方法

因此,对我来说,Facade本身并不被视为“应用程序功能”,而是作为访问存储在服务容器中的服务(提供功能)的一种方式

这就是说,如果您想使用类似于Guard的方法构建服务,我认为,与往常一样,目录结构取决于您:Laravel在这种情况下非常灵活

一旦您构建了服务类,如果您认为它会有用,您可以实现一个或多个Facade来访问一些服务


就我个人而言,我不太喜欢Facade,我认为最好在可能的情况下使用依赖项注入(通过方法或构造函数参数):这将在需要的地方注入服务,但同时保持代码依赖项更加清晰,因为它们可以从方法的签名中立即看到

我的问题出了什么问题?如果你投了反对票,告诉我你认为应该改进什么。好吧,你说得对。我喜欢你使用的术语
服务
。我想我会坚持这一点,而不是门面术语。