tp命名空间
namespace Home\Controller; 命名空间 根命名空间下的类所在的文件夹
use Think\Controller; 使用 根命名空间下的controller类
顶头写写在最上面
命名空间:虚拟目录
目的:自动加载类
初始命名空间:Library(公用的,为了保证他的完整性,一般不往这里面写)
根命名空间:
1.Library下的所有文件夹
2.应用程序的模块名(home)
命名空间的写法(反斜杠):\
从根命名空间开始写,写到该类所在的文件夹为止。
如何使用命名空间:
1.从根命名空间开始写,写到类名为止。
2.new \Home\Lib\DBDA();
例如:引用DBDA类(因为library是公用的,放在这里吗就是所有的都用,所以一般不放在library里)
<?php namespace Lib;//加这个 class DBDA{
<?php namespace Home\Controller; use Think\Controller; class LoginController extends Controller{ public function login(){ $db = new\Lib\DBDA(); var_dump($db); //向TP里面注册变量 $this->assign("ceshi","张三"); //显示模板 $this->show(); } public function chuli(){ echo $_POST["uid"]; } }
换个文件夹 把dbda放在home模块里
namespace HOME\Lib; class DBDA{
<?php namespace Home\Controller; use Think\Controller; class LoginController extends Controller{ public function login(){ $db = new\Home\Lib\DBDA(); var_dump($db); //向TP里面注册变量 $this->assign("ceshi","张三"); //显示模板 $this->show(); } public function chuli(){ echo $_POST["uid"]; } }
另一种写法
<?php namespace Home\Controller; use Think\Controller; use Home\Lib\DBDA; class LoginController extends Controller{ public function login(){ $db = new DBDA(); var_dump($db); //向TP里面注册变量 $this->assign("ceshi","张三"); //显示模板 $this->show(); } public function chuli(){ echo $_POST["uid"]; } }