Php 在laravel mvc框架中何时使用服务层

Php 在laravel mvc框架中何时使用服务层,php,laravel,design-patterns,Php,Laravel,Design Patterns,我的api和web有相同的代码 所以我尝试在我的项目中使用服务层 我读了很多用Laravel制作的开源项目,其中没有任何服务,我很困惑为什么 更新 我想出了图书馆必须使用的方法 1-Use作业用于业务逻辑 如@Hamelraj建议的2-使用特征 那么,这些方法是否可以很好地替代服务层呢?一切都是服务。 在Laravel的上下文中,生成表单、表单验证、生成csrf令牌、身份验证、路由、广播、管理事件、Laravel应用程序实例本身等都是服务。上面提到的一些服务Laravel需要准备或满足请求,还有

我的api和web有相同的代码

所以我尝试在我的项目中使用服务层

我读了很多用Laravel制作的开源项目,其中没有任何服务,我很困惑为什么

更新

我想出了图书馆必须使用的方法

1-Use作业用于业务逻辑

如@Hamelraj建议的2-使用特征


那么,这些方法是否可以很好地替代服务层呢?

一切都是服务。

在Laravel的上下文中,生成表单、表单验证、生成csrf令牌、身份验证、路由、广播、管理事件、Laravel应用程序实例本身等都是服务。上面提到的一些服务Laravel需要准备或满足请求,还有一些是Laravel引导的,供开发人员以后使用

像Laravel这样的任何其他框架都不知道其开发人员将来还需要什么服务。否则,它会造成不必要的复杂性。因此,他们实现了一种称为SOA(面向服务的体系结构)的设计原则。这样开发人员可以在需要时添加服务,Laravel会考虑这些服务。这意味着你可以在应用程序中使用它们。这完全是要抓住的重点


希望你能理解

一切都是服务。

在Laravel的上下文中,生成表单、表单验证、生成csrf令牌、身份验证、路由、广播、管理事件、Laravel应用程序实例本身等都是服务。上面提到的一些服务Laravel需要准备或满足请求,还有一些是Laravel引导的,供开发人员以后使用

像Laravel这样的任何其他框架都不知道其开发人员将来还需要什么服务。否则,它会造成不必要的复杂性。因此,他们实现了一种称为SOA(面向服务的体系结构)的设计原则。这样开发人员可以在需要时添加服务,Laravel会考虑这些服务。这意味着你可以在应用程序中使用它们。这完全是要抓住的重点


希望你能理解

试试这个-试试这个-我很理解你,但我仍然很困惑,我有多少方法可以防止web和api中的重复代码?如何处理这个问题?我想我不能在laravel中使用服务提供商,所以我必须创建一个服务层或什么?好的,你能给我看一些你认为重复代码发生的代码示例吗?例如,我有很多注册用户的代码,向用户添加数据默认数据,创建一些与用户相关的记录。因此,我可以使用
服务层
这样做
$userService->create($request)
,并将所有代码投入服务。但这并没有图书馆的用途,我想知道为什么?Laravel有服务提供者,你们称之为服务层的实际上是SOA。这三个都是一样的。所以使用它。看那里的文档我了解laravel服务提供商,但我认为这不是一个放置业务逻辑的地方。服务提供商正在为整个应用程序提供一些功能,而不是在控制器中调用它(例如在验证之后)。我很理解你们,但我仍然很困惑,我有多少方法可以防止web和api中的重复代码?如何处理这个问题?我想我不能在laravel中使用服务提供商,所以我必须创建一个服务层或什么?好的,你能给我看一些你认为重复代码发生的代码示例吗?例如,我有很多注册用户的代码,向用户添加数据默认数据,创建一些与用户相关的记录。因此,我可以使用
服务层
这样做
$userService->create($request)
,并将所有代码投入服务。但这并没有图书馆的用途,我想知道为什么?Laravel有服务提供者,你们称之为服务层的实际上是SOA。这三个都是一样的。所以使用它。看那里的文档我了解laravel服务提供商,但我认为这不是一个放置业务逻辑的地方。服务提供商正在为整个应用程序提供一些功能,而不是在控制器中调用它(例如,在验证之后)