当前位置:  编程技术>php

ThinkPHP中R方法实例教程

    来源: 互联网  发布时间:2014-08-30

    本文导语:  ThinkPHP中R方法实例教程 ThinkPHP的R方法用于调用某个控制器的操作方法,是A方法的进一步增强和补充。 R方法的调用格式: R('[项目://][分组/]模块/操作','参数','控制器层名称') 例如,定义一个操作方法为:   代码示例: class Us...

ThinkPHP中R方法实例教程

ThinkPHP的R方法用于调用某个控制器的操作方法,是A方法的进一步增强和补充。
R方法的调用格式:
R('[项目://][分组/]模块/操作','参数','控制器层名称')

例如,定义一个操作方法为:
 

代码示例:
class UserAction extends Action {
  public function detail($id){
    return M('User')->find($id);
  }
 }
 

即可通过R方法在其他控制器里面调用这个操作方法(一般R方法用于跨模块调用)
 

代码示例:
$data = R('User/detail',array('5'));

表示调用User控制器的detail方法(detail方法必须是public类型),返回值就是查询id为5的一个用户数据。
如果要调用的操作方法是没有任何参数的话,第二个参数则可以留空,直接使用:
 

代码示例:
$data = R('User/detail');

也可以支持跨分组和项目调用,例如:
 

代码示例:
R('Admin/User/detail',array('5'));

表示调用Admin分组下面的User控制器的detail方法。
 

代码示例:
R('Admin://User/detail',array('5'));

表示调用Admin项目下面的User控制器的detail方法。

官方的建议是不要在同一层做太多调用,否则会引起逻辑的混乱,被公共调用的部分应该封装成单独的接口,可以借助ThinkPHP3.1的新特性多层控制器,单独添加一个控制器层用于接口调用,例如,我们增加一个Api控制器层,
 

代码示例:
class UserApi extends Action {
  public function detail($id){
    return M('User')->find($id);
  }
 }
 

然后,使用R方法调用:
 

代码示例:
$data = R('User/detail',array('5'),'Api');

即R方法的第三个参数支持指定调用的控制器层。
同时,R方法调用操作方法的时候可以支持操作后缀设置C('ACTION_SUFFIX'),如果设置了操作方法后缀,仍然不需要更改R方法的调用方式。

以上通过实例介绍了ThinkPHP中R方法的用法,希望对大家有所帮助。

您可能感兴趣的文章:
  • ThinkPHP之M方法实例教程
  • ThinkPHP之A方法实例教程
  • ThinkPHP之N方法实例教程
  • ThinkPHP中import方法实例教程
  • ThinkPHP模板引擎导入资源文件教程详解
  • ThinkPHP令牌验证实例教程
  • ThinkPHP中L方法实例教程
  • ThinkPHP中Mobile用法实例教程
  • Thinkphp中volist标签用法实例教程
  • ThinkPHP中I方法使用实例教程

    
 
 

您可能感兴趣的文章:

  • ThinkPHP之N方法实例教程
  • ThinkPHP之A方法实例教程
  • ThinkPHP标签怎么制作?thinkphp标签制作实例教程
  • ThinkPHP之A方法实例讲解
  • ThinkPHP之N方法实例详解
  • ThinkPHP实现批量删除数据的代码实例
  • ThinkPHP中L方法实例教程
  • 采用ThinkPHP中F方法实现快速缓存实例
  • ThinkPHP3.1之D方法实例详解
  • ThinkPHP的Widget扩展实例
  • ThinkPHP的MVC开发机制实例解析
  • ThinkPHP之R方法实例详解
  • thinkphp自定义标签与view直接标签实例教程
  • thinkphp一键清除缓存实例教程
  • ThinkPHP文件上传实例教程
  • ThinkPHP实例化模型的四种方法概述
  • Thinkphp中volist标签用法实例教程
  • ThinkPHP模板替换与系统常量及应用实例教程
  • ThinkPHP之M方法实例教程
  • ThinkPHP使用UTFWry地址库进行IP定位实例
  • ThinkPHP CURD方法之order方法教程详解
  • ThinkPHP CURD方法中limit方法教程详解
  • ThinkPHP CURD方法之order方法详解
  • ThinkPHP CURD方法之table方法教程详解
  • thinkphp分页保持搜索状态实现方法
  • ThinkPHP CURD方法之limit方法详解
  • ThinkPHP让分页保持搜索状态的方法
  • ThinkPHP CURD方法中page方法教程详解
  • ThinkPHP的模版中调用session数据的方法
  • ThinkPHP查询中的魔术方法简述
  • 浅析ThinkPHP中execute和query方法的区别
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ThinkPHP学习笔记(一)ThinkPHP部署
  • ThinkPHP3.1新特性之对分组支持的改进与完善概述
  • 轻量级PHP开发框架 ThinkPHP
  • 模仿 thinkphp 的 nodejs MVC 框架 Nstorm
  • ThinkPHP中的关联模型注意点
  • ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
  • ThinkPHP实现事务回滚示例代码
  • Thinkphp模板中截取字符串函数简介
  • ThinkPHP命令行工具 Tptool
  • 数据库 iis7站长之家
  • ThinkPHP中URL路径访问与模块控制器之间的关系
  • ThinkPHP3.1新特性之内容解析输出详解
  • Thinkphp中import的几个用法详细介绍
  • ThinkPHP模板判断输出Empty标签用法详解
  • ThinkPHP模板判断输出Present标签用法详解
  • Thinkphp实现MySQL读写分离操作示例
  • ThinkPHP模板IF标签用法详解
  • ThinkPHP3.1新特性之动态设置自动完成和自动验证示例
  • 在nginx中配置pathinfo模式支持thinkphp的URL重写
  • ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3