ThinkPHP控制器间实现相互调用的方法


Posted in PHP onOctober 31, 2014

本文实例讲述了ThinkPHP控制器间实现相互调用的方法。分享给大家供大家参考。具体实现方法如下:

ThinkPHP同一个项目里,两个控制器的方法如何相互调用呢?ThinkPHP提供了一个A(),通过它可以使控制器之间的方法相互调用,使得代码可以重复利用。

官方似乎对A()方法没有相关使用文档,现在通过一个例子来说一下如使用A()方法。

有两个控制器,ColumnsAction和NewsAction。ncatlist()是ColumnsAction的分类列表方法,现在我要在控制器NewsAction中调用ncatlist()方法。

代码如下:

class ColumnsAction extends Action{   

public function ncatlist(){  

    $Columns=new Model;  

                     

    $News = M("News");  

    $list=$Columns->query("SELECT concat(colPath,'-',colId) AS bpath, colId,colPid,colPath, colTitle, description,ord FROM ".C('DB_PREFIX')."columns where typeid=1   

      

ORDER BY bpath, colId");  

                                  

       $this->assign('alist',$list);       

      }  

}  

class NewsAction extends CommonAction {  

      

    // 首页  

    public function index() {  

   $Columns=A("Columns");  

   $Columns->ncatlist();  

}

这样在模板中你就可以循环alist来获取分类列表了。

说明:上面的代码是WBlog3.0(使用thinkphp3.0的核心包)的代码版断,不过我查看了thinkphp3.1和thinkph3.12核心包还保留着A方法。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP实现图片简单上传
Oct 09 PHP
PHP 数组遍历方法大全(foreach,list,each)
Jun 30 PHP
PHPMailer邮件发送的实现代码
May 04 PHP
php解析url的三个示例
Jan 20 PHP
ThinkPHP文件上传实例教程
Aug 22 PHP
PHP将HTML转换成文本的实现代码
Jan 21 PHP
php实现随机生成易于记忆的密码
Jun 19 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
Oct 10 PHP
PHP附件下载中文名称乱码的解决方法
Dec 17 PHP
php实现文件上传及头像预览功能
Jan 15 PHP
PHP对称加密算法(DES/AES)类的实现代码
Nov 14 PHP
php实现微信原生支付(扫码支付)功能
May 30 PHP
ThinkPHP上使用多说评论插件的方法
Oct 31 #PHP
让ThinkPHP支持大小写url地址访问的方法
Oct 31 #PHP
set_exception_handler函数在ThinkPHP中的用法
Oct 31 #PHP
php使用fopen创建utf8编码文件的方法
Oct 31 #PHP
php结合js实现点击超链接执行删除确认操作
Oct 31 #PHP
PHP页面实现定时跳转的方法
Oct 31 #PHP
Thinkphp多文件上传实现方法
Oct 31 #PHP
You might like
Laravel 5框架学习之模型、控制器、视图基础流程
2015/04/08 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
Javascript 闭包引起的IE内存泄露分析
2012/05/23 Javascript
jquery如何把参数列严格转换成数组实现思路
2013/04/01 Javascript
js判断浏览器类型的方法
2013/08/07 Javascript
简述AngularJS的控制器的使用
2015/06/16 Javascript
JavaScript获取当前运行脚本文件所在目录的方法
2016/02/03 Javascript
js遍历json的key和value的实例
2017/01/22 Javascript
解决html input验证只能输入数字,不能输入其他的问题
2017/07/21 Javascript
Angular 容器部署的方法
2018/04/17 Javascript
微信小程序上传图片功能(附后端代码)
2020/06/19 Javascript
记一次webapck4 配置文件无效的解决历程
2018/09/19 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
layer.open 获取不到表单信息的解决方法
2019/09/26 Javascript
JS eval代码快速解密实例解析
2020/04/23 Javascript
python实现的一个p2p文件传输实例
2014/06/04 Python
python执行shell获取硬件参数写入mysql的方法
2014/12/29 Python
python之列表推导式的用法
2019/11/29 Python
python IDLE添加行号显示教程
2020/04/25 Python
python实现PDF中表格转化为Excel的方法
2020/06/16 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
Python变量及数据类型用法原理汇总
2020/08/06 Python
社区版pycharm创建django项目的方法(pycharm的newproject左侧没有项目选项)
2020/09/23 Python
Python如何使用vars返回对象的属性列表
2020/10/17 Python
python在地图上画比例的实例详解
2020/11/13 Python
THE OUTNET美国官网:国际设计师品牌折扣网站
2017/03/07 全球购物
优秀党支部事迹材料
2014/01/14 职场文书
薪酬专员岗位职责
2014/02/18 职场文书
信息管理专业自荐书
2014/06/05 职场文书
幼儿教师师德师风演讲稿
2014/08/22 职场文书
乡镇个人对照检查材料
2014/08/22 职场文书
个人遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
违反纪律检讨书范文
2015/05/07 职场文书
python文件目录操作之os模块
2021/05/08 Python
MySQL 全文检索的使用示例
2021/06/07 MySQL