tp5跨控制器调用方法

法一:

若在同一个controller文件夹下的控制器互相调用的话可以直接new来实例化:

例如在Index 控制器里面调用Menus

$menus=new  Menus; //在当前控制器里实例化Menus 控制器

或者用 controller()助手函数来实例化

$menus=controller(‘Menus‘);

法二:如果不在一个模块下的话可以通过 use 来引入

比如 :

use app\common\controller\Menus;

然后再实例化

$menus=new  Menus; //最后再调用即可

原文地址:https://www.cnblogs.com/xiaogou/p/9328295.html

时间: 2024-10-11 18:14:51

tp5跨控制器调用方法的相关文章

ThinkPHP跨控制器调用方法

跨控制器调用方法 1. 先造对象,再调用里面的方法 $sc=new \Home\Controller\IndexController();  用绝对路径找echo $sc->ShuChu(); 2. $sc=new IndexController();  用相对路径 echo $sc->ShuChu(); 还可以使用thingkphp中的快捷方法 1. $sc=A("Index");      使用TP框架的快捷方法A来创建控制器对象  ()内直接写控制器名 [跨模块调用]

ThinkPHP 3.2.2跨控制器调用方法

 所谓跨控制器调用,指的是在一个控制器中调用另一个控制器的某个方法.在ThinkPHP中有三种方式实现跨控制器调用: 直接实例化: A()函数实例化; R()函数实例化. (1)直接实例化  直接实例化就是通过new关键字实例化相关控制器,例如: 1 $goods = new GoodsController() //直接实例化Goods控制器类 2 $info = $goods->info(); //调用Goods控制器类的info()方法 需要注意的是,如果实例化的控制器与当前控制器不在同一目

跨控制器调用

跨控制器调用就是在本控制器里调用其他控制器里的方法或属性. $u = A("User");//在该控制器里实例化其他控制器User对象,A快捷函数的用法:A([模块/]控制器标志 $u->member(); 也可以简写成:R("User/member");R函数是对A函数的一个封装. A和R函数不仅可以跨控制器,跨模块,还可以跨项目调用,A([项目名://][模块/]控制器标志),R([项目名://][模块/]控制器标志/方法名).

tp框架基础控制器调用方法

public function indd(){ //调用该控制器下的某个方法 $this ->index(); //跨控制器调用 $k = A("index");// 创建控制器对象 $k -> index(); //跨模块调用 $k = A("home/index"); $k -> index(); }

ThinPHP命名空间,连接数据库是要修改的配置文件,Model数据模型层,跨控制器调用,如何获取系统常量信息,

一.命名空间(主要是为了实现自动加载类) *命名空间(相当于虚拟的目录),为了让类有一个统一的文件夹来管理(可以自动加载'类'),每个文件都要有命名空间*tp如何做命名空间:*TP框架下有一个初始命名空间(相当于根目录)ThinkPHP\Libray*在初始命名空间下又包含很多根命名空间,这些根命名空间主要分两类:1.TP核心类里面的根(系统文件)        在Libray下,有几个文件夹就有几个根(所有的文件夹都是根)2.APP里面的根(自定义文件)        APP里面的根是以模块名

JS访问或设置cookie的方法+跨域调用方法

无意中从163网站获取的JS访问或设置cookie的方法,Log到日志上以防遗忘 //COOKIE功能检查function fCheckCookie(){    if(!navigator.cookieEnabled){        alert("您好,您的浏览器设置禁止使用cookie\n请设置您的浏览器,启用cookie功能,再重新登录.");    }} //获取Cookiefunction fGetCookie(sName){   var sSearch = sName +

thinkphp3.2跨控制器调用其他模块的方法

thinphp中前台后台都有互相调用方法,这样可以省去重复内容. 1 2 $hello = new \Admin\Common\Fun\hello(); $hello->hehe(); 调用其他地方的方法同理. 如果是在同控制器里模块名可以省略. 如调用common里面的某个类的方法: 1 2 $hello = new \Common\Fun\hello(); $hello->hehe(); 框架里面提供了跨模块夸.控制器的 A() 方法 1 2 3 4 5 6 7 class GoodsCo

phalcon跨控制器调用

最近小贩在使用Phalcon框架时遇到了一个问题,就是在当前控制器如果调用其他控制器中的方法,现在问题解决,特此贴出代码: $this -> dispatcher -> forward(array(     'controller'    =>    '其他控制器名',     'action'        =>    '其他控制器中的方法名' )); 如果想像其他控制器传递参数,代码如下: $this -> dispatcher -> forward(array(

ThinkPHP 跨模块调用操作方法(A方法与R方法)

ThinkPHP 跨模块调用操作方法(A方法与R方法) 跨模块调用操作方法 前面说了可以使用 $this 来调用当前模块内的方法,但实际情况中还经常会在当前模块调用其他模块的方法.ThinkPHP 内置了 A方法与 R 方法这两个特殊的大写字母方法来处理跨模块调用的问题. 目前 Index 模块内有 index 操作,User 模块有 showName 操作,User 模块及 showName 操作具体代码如下: <?php class UserAction extends Action{ pu