@include 等效于 Laravel 中的控制器
@include equivalent for controllers in Laravel
我有各种控制器函数,其中有大量代码(用于 API 调用),这些代码在其他函数中重复了很多时间。是否有一个 @include 相当于 copy/paste 我的控制器中的代码。这将更容易阅读和跟进。
在我的控制器中,是这样的
public function store ()
{
if ($company->name = 'XYX')
{
@include('xyzcontrollercode')
}
if ($company->name = 'DEF')
{
@include('defcontrollercode')
}
}
包含 - 'xyzcontrollercode' 将包含大量逻辑,一旦 'if' 条件匹配,这些逻辑就会执行。
有什么方法可以为控制器实现这种功能吗?
您可以创建一个通用控制器并继承它。
例如:
class GeneralController extends Controller
{
public function operation(){
// do some things ...
}
}
class HomeController extends GeneralController
{
public function store(){
// do some things ...
if ($company->name == 'XYX')
{
$this->operation();
}
// do something ...
}
}
或者你可以使用依赖注入
我有各种控制器函数,其中有大量代码(用于 API 调用),这些代码在其他函数中重复了很多时间。是否有一个 @include 相当于 copy/paste 我的控制器中的代码。这将更容易阅读和跟进。
在我的控制器中,是这样的
public function store ()
{
if ($company->name = 'XYX')
{
@include('xyzcontrollercode')
}
if ($company->name = 'DEF')
{
@include('defcontrollercode')
}
}
包含 - 'xyzcontrollercode' 将包含大量逻辑,一旦 'if' 条件匹配,这些逻辑就会执行。
有什么方法可以为控制器实现这种功能吗?
您可以创建一个通用控制器并继承它。
例如:
class GeneralController extends Controller
{
public function operation(){
// do some things ...
}
}
class HomeController extends GeneralController
{
public function store(){
// do some things ...
if ($company->name == 'XYX')
{
$this->operation();
}
// do something ...
}
}
或者你可以使用依赖注入