phpPHP命名空間相關筆記

1.命名空間的聲明

通過關鍵字namespace 聲明命名空間
	namespace 命名空間名稱;
	命名空間針對 函數、類名、常量 三部分起作用,並稱之爲元素。
	常量聲明:
		define(名稱,值);//(在類外邊聲明常量)與命名空間沒有關係
		const  名稱 = 值;//也可以聲明命名空間===與命名空間有關係
			1>const 可以在類的內部聲明常量信息(類常量)
			2>	const 也可以在累的外部聲明常量(正常常量)
			使用命名空間的時候 const 可以放到類的外部聲明常量。


		const 和define的區別:
				前者針對命名空間發生影響,後者不會發生影響。
				const可以聲明多個同名稱的常量
				define 只能聲明一個同名稱的常量

2.訪問命名空間的元素

	//訪問元素沒有指明具體的命名空間,默認訪問當前命名空間(上邊緊挨着最近的命名空間)
	//訪問其他命名空間的元素 == classTwo命名空間爲例
	\classtwo\方法();

3.子級(多級)空間

	//命名空間可以讓我們存放許多元素(函數、類、常量),
	//有事元素較多時,爲了方便管理,可以對元素進行分門別類的存儲,
	//也就是說命名空間可以設置爲多級空間。多級空間的最後一級空間稱爲 子級空間。

4.訪問空間名稱的3種方式

	1>非限定名稱
		echo Animal::$name ;//就近訪問上邊與其接近的命名空間的Animal元素
		類似php引入文件:include“common.php”;//相對路徑
	2> 限定名稱
		echo beijing\Animal::$name;//把當前空間和beijing空間聯合獲得Animal元素
		類似php引入文件:include“common/confog/confog.php”;//相對路徑
	3>	完全限定名稱
		echo \beijing\Animal::$name;//訪問beijing空間的animal元素
		類似php引入文件:include "d:/web/confog.php";//絕對路徑引入文件

5.命名空間引入




元素引入

//use 空間\空間\類元素;
//空間引入可以解決完全限定名稱訪問元素的繁瑣性
//但是還需要通過 限定名稱 扔然不夠簡潔
//我們可以直接引入類,就可以直接把這個類引入到當前空間,使用的時候就可以通過非限定名稱 方式訪問,非常便捷。
//(只能做“類元素”引入,函數和常量不可以哦)

==================================================================================================

爲了防止類名稱的衝突,可以使用別名

use beijing\app\Student as NewClassName;



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章