1-----命名空间

              2-----调用其他控制器的方法

              3-----U()函数

一命名空间  

    ①看做是虚拟目录

      --ThinkPHP/Library  初始命名空间

      --在Library文件夹下的所有文件夹都称作根命名空间,由两部分构成

          |--1.Library目录下的所有文件夹

          |--2.应用程序目录里面的模块名

    ②定义当前类的命名空间

    --namespace  为当前创建的类指定命名空间  例如 namespace Home\Controller;

        从文件所在的根开始写,写到他所在的文件夹为止,

        ThinkPHP文件夹下的文件夹为根,或应用程序的Home以及自定义的模块下面

        只要是一个类,应该在根的模块下面或者Library下面

    ③加载其他的类

    --use  使用加载父类,例如 Think\Controller;  这是引入Library/Think/Contro.class.php

    --  使用外部类的时候加载  

        例如$app = new  \Think\App();

        第一个\代表初始命名空间,然后依次往下寻找至父类文件

    ④命名空间必须写在php文件的开头,他的前面不能有任何东西,session在tp框架中自动开启

      博客出自"万年",地址:博客出自"万年",地址:http://www.cnblogs.com/wannian/p/9003047.html

二 扩展--调用其他控制器的方法

  举例:

  Home模块Controller控制器目录下的

  在IndexController.class.php控制器里的index()方法中调用TestController.class.php里面的test()方法

    ①--

      1--先在index()中造出Test类的对象  

            $test = new \Home\Controller\TestController();

      2--访问该对象的test()方法

            $test->test();

    ②--A(" ")方法  实例化控制器对象

      1-- 造出test类的对象

          $test = A(" Test ");  如果在同一个模块下不写模块名,如果不在同一个模块下则从模块开始写

      2--访问对象的方法

          $test->test();

三 扩展 制作url的快捷函数U()方法

    生成操作方法的访问地址,参数是操作方法的名字

    例如 Application\Home\Controller\TestController.class.php的test()操作方法

        echo U(" test ");

        输出: /i/tp/index.php/Home/Test/test.html

    例如 Application\Adimn\Controller\TestController.class.php的中输出 Application\Home\Controller\TestController.class.php的test()操作方法

        echo U( "Admin\Test\test" );

          输出:  /i/tp/index.php/Home/Test/test.html

  

          

TinkPHP框架学习-04命名空间的更多相关文章

  1. TinkPHP框架学习-01基本知识

    1-----目录结构 2-----访问地址 3-----MVC开发 一 目录结构 |--Application 程序文件夹 |--Common 公共方法函数 |--Home      模块 |也可以自 ...

  2. TinkPHP框架学习-03模型类

    1-----数据访问 2-----数据查询 3-----数据添加 4-----数据修改 5-----数据删除 创建一张nation表并写入三条测试数据 create table nation( `co ...

  3. TinkPHP框架学习-02控制器基本操作

        1-----创建控制器     2-----访问视图页面 3-----注册变量到视图页面 4-----获取表单数据 一 在Home模块下创建控制器 举例: 目录tp/Application/H ...

  4. Spring框架学习04——复杂类型的属性注入

    代码示例如下: 创建BeanClass实体类 public class BeanClass { private String[] arrs;//数组类型 private List<String& ...

  5. Struts2框架学习(二) Action

    Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...

  6. Spring.NET依赖注入框架学习--简单对象注入

    Spring.NET依赖注入框架学习--简单对象注入 在前面的俩篇中讲解了依赖注入的概念以及Spring.NET框架的核心模块介绍,今天就要看看怎么来使用Spring.NET实现一个简单的对象注入 常 ...

  7. go server框架学习之路 - 写一个自己的go框架

    go server框架学习之路 - 写一个自己的go框架 用简单的代码实现一个go框架 代码地址: https://github.com/cw731/gcw 1 创建一个简单的框架 代码 packag ...

  8. Java之struts2框架学习

    Java之struts2框架学习 About Struts2 Struts也是一款MVC框架 , Struts2是Struts的下一代产品,是在Struts1和WebWork的技术基础上进行了合并的全 ...

  9. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

随机推荐

  1. Ubuntu 16.10的root默认密码设置

    1.终端输入sudo passwd 2.输入当前用户密码,回车 3.按照终端提示输入新的root密码并确认 4.su root 输入新的密码 5.修改root密码成功

  2. day-14带参装饰器、迭代器

    带参装饰器 通常,装饰器为被装饰的函数添加新功能,需要外界的参数  -- outer参数固定一个,就是func -- inner参数固定同被装饰的函数,也不能添加新参数 -- 可以借助函数的嵌套定义, ...

  3. zabbix 4.2 支持 timescledb 了

    zabbix 4.2 已经发布了, 添加了好多新功能 支持prometheus 数据收集 支持timescaledb 支持http header 处理 更加友好的邮件通知格式 添加远程监控组件 简化标 ...

  4. Filebeat工作过程(二)

    Filebeat简介 Filebeat是一个轻量级的收集日志和传输日志的工具(一直以为Filebeat是存储数据,并不是的它只是做一个收集传输功能):Filebeat安装在每一个你想要收集日志的服务器 ...

  5. 基于 debian 操作系统的 docker 镜像,安装 vim

    基于 debian 操作系统的 docker 镜像,安装 vim,步骤: apt-get update apt-get install vim 注意: 直接运行步骤2,可能会报错: Reading p ...

  6. JSP学习1---创建一个简单的jsp程序

    一.新建一个“Dynamic Web Project”动态Web项目 1.1输入项目名称 Project1,在Dynamic Web module version(动态Web模块版本),选择3.0(注 ...

  7. c# 执行javascript 脚本

    /// <summary> /// 执行JS /// this.ExecuteScript("get('{0}')".FormatWith(token0), File. ...

  8. windows下配置apache+https

    通过https反向代理映射到http地址,可实现以https的方式,访问普通的http网站.主要涉及到以下三个配置文件的修改:httpd.confhttpd-ssl.confhttpd-vhosts. ...

  9. MySQL 数据库索引

    数据库索引 在数据库中.索引使数据库程序无须对整个表进行全表扫描就可以在其中找到所需的数据: 数据库中的索引是某个表中一列或者若干列值的集合.以及物理标识这些值的数据页的逻辑指针清单: MySQL 索 ...

  10. 无法生成core dump文件的几个原因

    1. 进程无写权限(如目录不可写.存在同名的非regular文件(目录或符号链接)等) 2. 存在同名文件且有多个hard link 3. 文件系统空间不足 4. 指定目录不存在 5. 进程的RLIM ...