ThinkPHP5跨控制器调用

在同模块下
方法一:使用命名空间

//调用index模块user控制器中的index方法
$model = new \app\index\controller\User;
echo $model->index();

方法二:

//先引入
use app\index\controller\User;
$model = new User;
echo $model->index();

方法三:

//使用系统方法
$model = controller('User');
echo $model->index();

在其他模块控制器下
方法一:前台index模块调用后台admin下面的控制器方法

//使用命名空间
$model =  new \app\admin\controller\Index;
echo $model->index();

方法二:

//使用引入
use \app\admin\controller\Index as AdminIndex; //注意控制器名重复要改别名
$model = new AdminIndex();
echo $model->index();

方法三:

//系统方法调用
 $model = controller('admin/Index');
 echo $model->index();

同控制器的其他方法

//fangfa方法调用test方法
public function fangfa(){
    //方法一:
    echo $this->test();
             
    //方法二:
    echo self::test();
             
     //方法三:
    echo Index::test();//Index控制器
             
     //方法四:
    echo action(' test');
         
 }

其他控制器方法与其他模块方法

public function fangfa(){
//调用同控制器的index方法
    echo action('index');
     
    //调用其他控制器index方法
    echo action('User/index');
     
    //调用其他模块下的index方法
    echo action('admin/Index/index');
}

风影OvO

风影OvO, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA 4.0协议进行授权 | 转载请注明原文链接

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐