首页  >  文章  >  php框架  >  thinkphp跨模块调用方法

thinkphp跨模块调用方法

尚
转载
2020-04-03 10:30:313153浏览

thinkphp跨模块调用方法

在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.net。如有侵权,请联系admin@php.cn删除