对thinkphp的命名空间的理解
tp的命名空间其实就是虚拟目录,目的是为了自动加载类(不是管理文件)
tp命名空间包含两部分:
(1)初始命名空间:Library
(2)根命名空间:
a)Library文件下的所有文件夹,只含一级文件
b) 应用程序模块名(红色标注的是模块名)
tp框架里所有的类文件里都要写上命名空间!!!
怎么写?
namespace Admin\Controller;
从根开始写,写的该文件所在的目录为止。
怎么用?
第一种:
use Think\Controller;
从根开始写,写到类名为止。
第二种:
当不使用use时:
a) 将第三方类放在根命名空间目录下(以DBDA.class.php为例,放在Home文件夹下新建的Third文件下)
b)打开该文件,在顶端写上
<?php namespace Home\Third; class DB { public $host = "localhost"; public $uid = "root"; public $pwd = ""; public $dbname ="book"; function query($sql,$type = 1) 。。。。。。。。。
c)引用时:从初始命名空间开始写,到类名为止
$db = new \Home\Third\DB(); $db->dbname;