站三界导航
首页 TP代码tp5控制器调用,方法调用

tp5控制器调用,方法调用

  • TP代码
  • 来源:站三界导航
  • 171阅读
  • 2022-05-04

<?php
    //命名空间
    namespace app\index\controller;
    use app\admin\controller\Deer;
    class User{
        public function func(){
            echo 'index模块,User控制器,func方法';
        }
        public function test(){
            //一、调用相同模块下的不同控制器
            //1.直接new类,创建对象,调用方法
            $p = new Rabit();
            $p->carrot();
            echo '<hr>';
            //2.系统方法对象  =  controller(‘控制器名’),调用方法
            $p = controller('Rabit');
            $p->carrot();
            echo '<hr>';
            //二、调用不同模块下的控制器
            //1.系统方法 对象  = controller('模块名/控制器名'),调用方法
            $p = controller('admin/Deer');
            $p->grass();
            echo '<hr>';
            //2.使用命名空间
            $p = new \app\admin\controller\Deer;
            $p->grass();
            echo '<hr>';
            //3.使用面向对象,跨模块需要引文件
            $p = new Deer;
            $p->grass();
        }
        public function test2(){
            //一、调用相同控制器下不同方法(对象调用,本身调用,类调用,系统方法调用)
            $this->func();
            self::func();
            User::func();
            action('func');
            //二、调用相同模块下不同控制器下方法
            //1.系统方法  对象 = action('控制器路径/方法名')
            $p = action('Rabit/carrot');
            //2.类调用
            $p = new Rabit;
            $p->carrot();
            //三、调用不同模块下控制器的方法
            //1.系统方法调用
            action('admin/Deer/grass');
            //2.命名空间调用
            $p = new \app\admin\controller\Deer;
            $p->grass();
        }
    }
?>

注意:

命名空间使用反斜杠\

系统方法调用则为路径,(控制器/方法名)为路径的正斜杠。
本文结束
本文来自投稿,不代表站三界导航立场,如若转载,请注明出处:https://www.zhansanjie.com/article/details/8324.html

版权声明:

1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

2、本站仅提供信息发布平台,不承担相关法律责任。

3、若侵犯您的版权或隐私,请联系本站管理员删除。

4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。

分享
站三界导航
本站声明:本站严格遵守国家相关法律规定,非正规网站一概不予收录。本站所有资料取之于互联网,任何公司或个人参考使用本资料请自辨真伪、后果自负,站三界导航不承担任何责任。在此特别感谢您对站三界导航的支持与厚爱。