R方法是可以调用其他的Controller中的方法,

例如

我想在Mit/DebugController.class.php中调用Foo/DoController.class.php中的share方法,

需要在Mit/DebugController.class.php中写成

$pass = R("Foo/Do/share",array("26121"));
new Foo\Controller\DoController

这里是同一个项目底下的不同分类(Foo和Mit)。

但是需要注意几点,

  1. 如果你定义了Mit/Conf底下定义的DB_PREFIX和在Foo/Conf不同,则在Foo/DoController.class.php的方法中需要重新动态定义C('DB_PREFIX','ofo');Foo底下的配置。简单说就是,** 你用R()调用的方法使用的配置是当前的分类下的,而不是它原来的配置**,需要小心;

  2. R()方法的第3个参数是指定** layer **,默认的是DEFAULT_C_LAYERController。如果你指定了其他的layer,例如Foo/ConfigEvent.class.php这,这里需要指定为Event

  3. 如果你定义了ACTION_SUFFIX也就是可以调用的方法的后缀,你必须要保证这里的DoController类中的sharepublic而且加了ACTION_SUFFIX

  4. 具体的你可以打开ThinkPHP的log,在RunTime/Logs/Mit/2016.07.19.log中查看具体的错误。

ThinkPHP的单字母方法在ThinkPHP/Common/functions.php定义的,具体可以查看那里。

Reference:

  1. http://www.thinkphp.cn/document/134.html
  2. http://www.thinkphp.cn/topic/4723.html
  3. http://www.thinkphp.cn/document/309.html

ThinkPHP 3.2.3的 R 方法的更多相关文章

  1. ThinkPHP函数详解:R方法

    R方法用于调用某个控制器的操作方法,是A方法的进一步增强和补充.关于A方法的用法见这里.R方法的调用格式:R('[项目://][分组/]模块/操作','参数','控制器层名称') 例如,我们定义了一个 ...

  2. ThinkPHP的A方法,R方法,M方法,D方法区别

    在Thinkphp中,实例化对象有这么几种方法,如果是类,有A和R方法,区别是A方法只是对象的实例化,而R方法是可以同时实例化对象里面的方法的,这里需要去指定,如下面的实例代码: <?php n ...

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

    ThinkPHP 跨模块调用操作方法(A方法与R方法) 跨模块调用操作方法 前面说了可以使用 $this 来调用当前模块内的方法,但实际情况中还经常会在当前模块调用其他模块的方法.ThinkPHP 内 ...

  4. TP框架中的A方法和R方法

    ThinkPHP 跨模块调用操作方法(A方法与R方法) 跨模块调用操作方法 前面说了可以使用 $this 来调用当前模块内的方法,但实际情况中还经常会在当前模块调用其他模块的方法.ThinkPHP 内 ...

  5. Thinkphp 3.2.2 验证码check_verify方法,只能验证一次

    问题: Thinkphp 3.2.2 验证码check_verify方法,只能验证一次. function check_verify($code, $id = ''){ $verify = \Thin ...

  6. ThinkPHP的D方法和M方法的区别

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

  7. ThinkPHP函数详解:session方法

    ThinkPHP函数详解:session方法 Session方法用于Session 设置.获取.删除和管理操作. Session 用于Session 设置.获取.删除和管理操作 用法    sessi ...

  8. ThinkPHP 中M方法和D方法详解----转载

    转载的地址,http://blog.163.com/litianyichuanqi@126/blog/static/115979441201223043452383/ 自己学到这里的时候,不能清除的分 ...

  9. thinkphp二维数组模板输出方法

    thinkphp二维数组模板输出方法 先写个记录,有空再整理发上来

随机推荐

  1. JQuery:JQuery设置HTML

    JQuery:设置HTML1.Query - 设置内容和属性设置内容 - text().html() 以及 val()我们将使用前一章中的三个相同的方法来设置内容: text() - 设置或返回所选元 ...

  2. POJ 1039问题描述

    Description The GX Light Pipeline Company started to prepare bent pipes for the new transgalactic li ...

  3. 使用shell测试cdn状态

    公司使用多家cdn,测试cdn在各个地方的响应情况,以便于提高视频访问的用户体验.分别在阿里云华南1,华东1,华东2,华北2等不同地区节点测试.该随笔为自己所用.   1.该脚本会测试某一cdn的ur ...

  4. 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化

    高性能Linux服务器 第10章    基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...

  5. 十大技巧快速提升原生APP开发性能

    移动应用市场用户争夺战日益激烈,原来做APP拼想法拼创意拼是否抓住用户痛点.现在,精细化用户体验成为了一个APP能否留存用户的关键问题,一旦用户觉得体验不畅,马上就有竞品APP后补,如何开发高性能的移 ...

  6. Java 继承 执行顺序

    代码: package com.company; public class Main { public static void main(String[] args) { new MyClass(); ...

  7. python使用zlib实现压缩与解压字符串

    命令 字符串:使用zlib.compress可以压缩字符串.使用zlib.decompress可以解压字符串. 数据流:压缩:compressobj,解压:decompressobj 案例 >& ...

  8. ON_NOTIFY_REFLECT : Message Reflection for Windows Controls

    转自: https://msdn.microsoft.com/en-us/library/eeah46xd.aspx TN062: Message Reflection for Windows Con ...

  9. ROC曲线及AUC评价指标

    很多时候,我们希望对一个二值分类器的性能进行评价,AUC正是这样一种用来度量分类模型好坏的一个标准.现实中样本在不同类别上的不均衡分布(class distribution imbalance pro ...

  10. Better PostgreSQL datacenter schema