ThinkPHP控制器间实现相互调用的方法
程序员文章站
2022-04-04 19:30:01
...
这篇文章主要介绍了ThinkPHP控制器间实现相互调用的方法,主要通过A()方法实现这一功能,可以有效的提高代码的重复利用率,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了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控制器间实现相互调用的方法的详细内容,更多请关注其它相关文章!
上一篇: linux下如何以命令行方式安装php
下一篇: css怎么让图片向左移动
推荐阅读
-
Android编程使用WebView实现与Javascript交互的方法【相互调用参数、传值】
-
Android中Fragment相互切换间不被回收的实现方法
-
Python不同目录间进行模块调用的实现方法
-
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
-
ThinkPHP控制器间实现相互调用的方法
-
Android中Fragment相互切换间不被回收的实现方法
-
Python不同目录间进行模块调用的实现方法
-
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
-
AngularJS实现controller控制器间共享数据的方法示例
-
thinkphp 控制器中 display()方法实现的原理,该如何处理