• 技术文章 >php框架 >ThinkPHP

    thinkphp跨模块调用方法

    尚2020-04-03 10:30:31转载1027

    在thinkphp里面我们如何跨模块调用?

    在开发过程中经常会在当前模块调用其他模块的方法,这个时候就涉及到跨模块调用,我们还可以了解到A和R两个快捷方法的使用。

    $User = A("User"); // 实例化UserAction控制器对象
    $User->importUser(); // 调用User模块的importUser操作方法

    这里的A("User") 是一个快捷方法,和下面的代码等效:

    import("@.Action.UserAction");
    $User = new UserAction();

    事实上,在这个例子里面还有比A方法更简单的调用方法,例如:

    R("User","importUser"); // 远程调用UserAction控制器的importUser操作方法

    上面只是在当前项目中调用,如果你有需要在多个项目之间调用方法,一样可以完成:

    $User = A("User","App2"); // 实例化App2项目的UserAction控制器对象
    $User->importUser(); 
    // 远程调用App2项目的UserAction控制器的importUser操作方法
    R("User","importUser","App2");

    我的一个例子:

    一个项目下面分了两个组:admin和home

    home默认是组:

    实例化模块的时候(当前位置是在admin中IndexAction类的index方法中实例化)

     import("@.Action.Home.UserAction");
    $User=new UserAction();
    $User->show();
    $User->add();

    注:调用的方法必须是 public型的

    推荐教程:thinkphp教程

    以上就是thinkphp跨模块调用方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:oschina,如有侵犯,请联系admin@php.cn删除
    专题推荐:thinkphp
    上一篇:ThinkPHP where方法介绍 下一篇:ThinkPHP利用PHPMailer发送邮件
    大前端线上培训班

    相关文章推荐

    • ThinkPHP无限分类的使用• Thinkphp如何制作404跳转页• 什么是ThinkPHP?简单入门介绍• 在thinkphp中实现facade的方法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网