zoukankan      html  css  js  c++  java
  • Thinkphp中的A 函数(Thinkphp3.2.3版本)

    A函数是TP中实例化控制器的一个快捷函数,它的语法结构如下:

    A('模块/控制器')
    //当控制器层名称不是 Controller 时须这样写
    A('模块/控制器','控制器层名称')

    如果要调用的控制器就在当前模块下,那么也可以按如下语法写:

    A('控制器')
    //或者这样
    A('控制器','控制器层名称')

    通常情况下访问控制器的实例化是自动完成的,系统会根据URL地址解析出访问的控制器名称自动实例化,并且调用相关的操作方法。比如我们输入下列URL地址:

    http://serverName/Home/Index/index

    此时系统会自动实例化 Home/Controller/IndexController.class.php 中的 IndexController 类。但如果你需要跨控制器调用的话必须先实例化才能调用:

    //假设当前在Home模块的Index控制器下
    //
    实例化Home模块的User控制器 $User = new HomeControllerUserController(); // 实例化Admin模块的Blog控制器 $Blog = new AdminControllerBlogController();

    以上代码如果用 A 函数的话可以简化如下:

    $User = A('User'); //因为 User 控制器就在当前模块 Home 下,所以模块名称可以省略
    $Blog = A('Admin/Blog');

    默认情况下,A方法实例化的是默认控制器层(Controller),如果你要实例化其他的分层控制器的话(比如 Event),可以使用:

    // 假设当前模块是Home模块
    // 实例化Event控制器
    $User = A('User','Event'); 
    $Blog = A('Admin/Blog','Event');

    上面的代码等效于:

    // 实例化Home模块的User事件控制器
    $User = new HomeEventUserEvent();
    // 实例化Admin模块的Blog事件控制器
    $Blog = new AdminEventBlogEvent();



    突破传统的上网方式,不用记网址、不用搜索引擎,输入一两个字母就能迅速打开你想访问的任何网站——小笨猪网址索引
  • 相关阅读:
    模拟+位运算 HDOJ 5491 The Next
    树状数组+二分||线段树 HDOJ 5493 Queue
    线段树(区间合并) HDOJ 3308 LCIS
    双端队列 HDOJ 3530 Subsequence
    BFS HDOJ 1242 Rescue
    Codeforces Round #321 (Div. 2)
    区间专题
    递推DP HDOJ 5459 Jesus Is Here
    补题列表2
    引用与指针的异同-基础篇
  • 原文地址:https://www.cnblogs.com/programs/p/5487853.html
Copyright © 2011-2022 走看看