跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

ThinkPHP控制器间实现相互调用的方法,thinkphp控制器_PHP教程

ThinkPHP控制器间实现相互调用的方法,thinkphp控制器本文实例讲述了thinkphp控制器间实现相互调用的方法。分享给大家供大家参考。具体实现方法如下:ThinkPHP同一个项目里,两个控制器的方法如何相互调用呢?ThinkPHP提供了一个A(),通过它可以使控制器之间的方法相互调用,使得代码可以重复利用。

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

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

代码如下:立即学习“PHP免费学习笔记(深入)

”;

ThinkPHP 8.1.0 ThinkPHP 8.1.0 正式发布,深度优化路由与验证机制,完美兼容 PHP 8.4。本版本修复了数组路由配置异常,新增枚举值校验与高级数组验证功能,支持路由分类默认处理。作为高性能 PHP 框架的最新迭代,它延续了简洁实用的设计原则,提供更稳定的底层架构与更流畅的开发体验,助力开发者快速构建现代化 Web 应用与企业级系统。

下载复制代码代码如下: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框架程序设计有所帮助。

thinkphp中怎在一个一个模块里的方法中调用该模块的另一个方法?thinkphp的方法可以否传递参数?

直接 $this -> function(); 就可以了... 完全把Action当做一个Class看待即可,灵活使用,参数也是可以加的,不过声明的时候尽量加上默认参数,免得通过模块调用的时候,报出无参数的提醒错误。

thinkphp当前操作方法调用其他操作方法的值将获取ID的用另外的方法封装,比如protected function getId(){$id = //获取方法return $id}其他方法中进行调用$id = $this->getId();http://www.bkjia.com/PHPjc/904010.html www.bkjia.com true http://www.bkjia.com/PHPjc/904010.html TechArticle ThinkPHP控制器间实现相互调用的方法,thinkphp控制器 本文实例讲述了ThinkPHP控制器间实现相互调用的方法。分享给大家供大家参考。具体实现...

相关文章