欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ThinkPHP之A方法实例讲解

程序员文章站 2023-01-08 21:51:43
thinkphp的a方法用于在内部实例化控制器,其调用格式为: a('[项目://][分组/]模块','控制器层名称') 最简单的用法: $user = a(...

thinkphp的a方法用于在内部实例化控制器,其调用格式为:

a('[项目://][分组/]模块','控制器层名称')

最简单的用法:

$user = a('user');

表示实例化当前项目的useraction控制器(这个控制器对应的文件位于lib/action/useraction.class.php),如果采用了分组模式,并且要实例化另外一个admin分组的控制器可以用:

$user = a('admin/user');

也支持跨项目实例化(项目的目录要保持同级)

$user = a('admin://user');

表示实例化admin项目下面的useraction控制器

thinkphp的3.1版本增加了分层控制器的支持,所以还可以用a方法实例化其他的控制器,例如:

$user = a('user','event);

实例化userevent控制器(对应的文件位于lib/event/userevent.class.php)。
实例化控制器后,就可以调用该控制器中的方法,不过需要注意的情况是,在跨项目调用的情况下,如果你的操作方法 有针对当前控制器的特殊变量操作,会有一些未知的问题,所以,一般来说,官方建议需要公共调用的控制器层单独开发,不要有太多的依赖关系。