1.现在有两个文件夹下的两个控制器,A,B 想要在A的一个方法中调用B控制器的方法
2.因为要在业务中,根据条件,来调用不同控制器的方法 例如:
$temp;
if(true){
requre_once($temp."Controller.php");
(new $temp())->index();
}
有什么基于laravel框架的方法或者特性来调用吗?让其优雅点. 貌似记得thinkphp3.2 框架有个R函数.
1.现在有两个文件夹下的两个控制器,A,B 想要在A的一个方法中调用B控制器的方法
2.因为要在业务中,根据条件,来调用不同控制器的方法 例如:
$temp;
if(true){
requre_once($temp."Controller.php");
(new $temp())->index();
}
有什么基于laravel框架的方法或者特性来调用吗?让其优雅点. 貌似记得thinkphp3.2 框架有个R函数.
需求实现:
if (true){
app(B::class)->functionName();
}
但是,既然你提到 优雅 一词,那在一个 controller
里面调用另一个 controller
方法的这种想法就是很不优雅的,就算再优雅的实现也不会有优雅的代码
因为要在业务中,根据条件,来调用不同控制器的方法
可以贴一下具体的业务需求,大家才好帮你解决根本问题
现在的框架都不会在一个controller,调用另一个controller,而且现在文件的使用都是走namespace,不会区使用require,要实现你的目的可以这样做,建一个service,然后在controller里调用你写的service 下的方法。文件路径的使用可以使用namespace,用注入的方式调用。
1 回答4.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答581 阅读✓ 已解决
791 阅读
为啥不写在模型里呢?R方法其实调用的和D的没什么区别,就传参方法不一样吧,我更好奇laravel有没有钩子函数,yii和tp都有