[TOC] #### 1. 命名空間的訪問分為三種模式 --- 非限定名稱訪問、限定名稱訪問、完全限定名稱訪問 **非限定名稱訪問** ``` var_dump();// 不加空間名前綴訪問空間元素 ``` **限定名稱訪問** ``` \think\var_dump();// 加空間名前綴訪問空間元素 ``` **完全限定名稱訪問** ``` \app\think\var_dump();//從根命名空間開始訪問 ``` ``` <?php namespace app\think; function var_dump() { echo 'this is one data <br>'; } var_dump();//非限定名稱訪問 namespace app; think\var_dump();//限定名稱訪問 \app\think\var_dump();//完全限定名稱訪問 ``` #### 2. 通過 use 關(guān)鍵字訪問空間元素 --- **use 語法規(guī)則** **使用 `as` 時空間元素名稱則被新名稱取代, 原名稱不能用了, 故不能稱之為起別名, 應(yīng)該是起新名** use 引入空間元素是從根命名空間引入的, 也就是 `完全限定名稱訪問` ``` use [元素類型] [命名空間\]類名 [as 新名稱]; ``` 空間元素都可以通過 use 引入, 但是對于不同類型的空間元素引入方式 ``` use 空間名稱\類名;//引入類 use function 空間名稱\函數(shù)名;//引入函數(shù) use const 空間名稱\常量名;//引入常量 ``` **使用示例** ``` use app\A; // 類 use const app\PI;//常量 use function app\var_dump;//函數(shù) ``` **PHP7 開始支持使用 `{}` 一次引入多個相同命名空間下的多個空間元素 (PHP7之前需要使用多次 use)** ``` use app\{ A,//類 const PI,//常量 function var_dump,//函數(shù) }; ``` #### 3. 系統(tǒng)默認(rèn)的空間元素訪問規(guī)則 --- 系統(tǒng)內(nèi)置的函數(shù)、常量、類都屬于全局空間 函數(shù)和類在空間內(nèi)訪問時系統(tǒng)會先在當(dāng)前空間找, 找不到再去全局空間找; 而類不會去全局空間下找, 當(dāng)前空間下類找不到時將拋出 `Fatal error`