您好,登錄后才能下訂單哦!
這篇文章主要介紹php中命名空間如何引入,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
php,一個(gè)嵌套的縮寫名稱,是英文超級(jí)文本預(yù)處理語(yǔ)言(PHP:Hypertext Preprocessor)的縮寫。PHP 是一種 HTML 內(nèi)嵌式的語(yǔ)言,PHP與微軟的ASP頗有幾分相似,都是一種在服務(wù)器端執(zhí)行的嵌入HTML文檔的腳本語(yǔ)言,語(yǔ)言的風(fēng)格有類似于C語(yǔ)言,現(xiàn)在被很多的網(wǎng)站編程人員廣泛的運(yùn)用。
如果php中的命名空間需求較多,可以創(chuàng)建多級(jí)空間來(lái)解決,但這樣也產(chǎn)生了許多不便之處。為了使代碼部分進(jìn)行簡(jiǎn)化,我們又增加了引入的方法,通過(guò)use關(guān)鍵字來(lái)實(shí)現(xiàn),主要是給對(duì)象起別名的方法。
1.命名空間引入好處
(1)命名空間可以聲明為多級(jí)空間,這個(gè)多級(jí)空間元素在其他空間內(nèi)部訪問(wèn)的時(shí)候,不得已需要通過(guò)完全限定名稱方式,這個(gè)完全限定名稱不方便開發(fā)、維護(hù)、使用。
(2)為了降低代碼的復(fù)雜度,可以在當(dāng)前的空間把指定的空間給引入進(jìn)來(lái),進(jìn)而可以方便地通過(guò)“限定名稱”的方便的形式使用其他空間的元素.
2.使用use關(guān)鍵字
如果引入類與當(dāng)前空間的類起沖突時(shí),可以使用as起別名;如use App\Student as Stu;
使用use引入后,可以直接使用類名稱;$student = new Student()
3.實(shí)例
<?php /** * 命名空間的導(dǎo)入,本質(zhì)上就是用一個(gè)別名,來(lái)簡(jiǎn)化一個(gè)比較長(zhǎng)的多級(jí)的命名空間名稱 * * 導(dǎo)入主要針對(duì)類空間,PHP5.6以后,也支持常量與函數(shù)空間名稱導(dǎo)入 * * 導(dǎo)入空間默認(rèn)名稱主要用use,空間別名的簡(jiǎn)化用as * 使用use導(dǎo)入空間別名,可用as來(lái)自定義別名,防止空間重名 */ namespace app\index\controller; const CITY = '北京'; function say() { return 'Hello world!'; } class User { public function hello() { return "I'm fine, thank you!"; } } namespace myspace; // 不使用use來(lái)簡(jiǎn)化空間名稱 echo \app\index\controller\CITY.'<br>'; echo \app\index\controller\say().'<br>'; $user = new \app\index\controller\User; echo $user->hello(); echo '<hr>'; // 用use來(lái)導(dǎo)入一個(gè)命名空間,并起個(gè)簡(jiǎn)短的名稱 use const app\index\controller\CITY; use function app\index\controller\say; use app\index\controller\User; echo CITY.'<br>'; echo say().'<br>'; $user = new User; echo $user->hello(); echo '<hr>'; // 用as來(lái)進(jìn)一步簡(jiǎn)化空間的名稱 use const app\index\controller\CITY as C; use function app\index\controller\say as s; use app\index\controller\User as U; echo C.'<br>'; echo s().'<br>'; $user = new U; echo $user->hello(); echo '<hr>';
以上是“php中命名空間如何引入”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。