查看: 1411|回复: 0

[PHP实例] thinkphp3.2实现跨控制器调用其他模块的方法

发表于 2018-2-6 08:00:01

本文实例讲述了thinkphp3.2实现跨控制器调用其他模块的方法。分享给大家供大家参考,具体如下:

thinphp中前台后台都有互相调用方法,这样可以省去重复内容。

  1. $hello = new \Admin\Common\Fun\hello();
  2. $hello->hehe();
复制代码

调用其他地方的方法同理。

如果是在同控制器里模块名可以省略。

如调用common里面的某个类的方法:

  1. $hello = new \Common\Fun\hello();
  2. $hello->hehe();
复制代码

框架里面提供了跨模块、夸控制器的 A() 方法

  1. class GoodsController extends Controller{
  2. function showlist(){
  3. // 实例化User控制器与调用方法
  4. $user = A('User');//通过快捷函数实例化控制器对象
  5. echo $user->number();//调用number()方法
  6. }
  7. }
复制代码

调用示范:

  1. A('User'); //跨控制器
  2. A('Admin/User'); //跨模块
  3. A('shop://Admin/User'); //跨项目
复制代码

如果还是不够方便的话框架还提供了R()方法,实例化类并调用方法。

  1. //User为控制器 number为方法
  2. R('User/number');
  3. R('Admin/User/number');
  4. R('shop://Admin/User/number');
复制代码

效果如下:

  1. class GoodsController extends Controller{
  2. function showlist(){
  3. // 实例化User控制器与调用方法
  4. A('User/number');//实例化user类并调用number方法
  5. }
  6. }
复制代码

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

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

您可能感兴趣的文章:

  • thinkphp控制器调度使用示例
  • ThinkPHP3.2.2的插件控制器功能简述
  • ThinkPHP控制器间实现相互调用的方法
  • ThinkPHP控制器详解
  • 初识ThinkPHP控制器
  • thinkphp3.2实现上传图片的控制器方法
  • 完美解决在ThinkPHP控制器中命名空间的问题
  • Thinkphp 空操作、空控制器、命名空间(详解)
  • thinkPHP通用控制器实现方法示例


回复

使用道具 举报