php中namespace use用法實(shí)例分析
本文實(shí)例講述了php中namespace use用法。分享給大家供大家參考,具體如下:
現(xiàn)在說(shuō)這個(gè)感覺(jué)有點(diǎn)過(guò)時(shí)了,但是感覺(jué)用namespace的人還是不多,估計(jì)還是因?yàn)椴涣?xí)慣吧。
class把一個(gè)一個(gè)function組織起來(lái),namespace可以理解成把一個(gè)一個(gè)class,function等有序的組織起來(lái)。個(gè)人覺(jué)得,namespace的主要優(yōu)勢(shì)有
第一,可以更好的管理代碼
第二,文件一多,可以避免class,function的重名
第三,代碼可讀性增強(qiáng)了
1. 定義namespace
namespace userCenter; //php代碼 namespace userCenter\register; //php代碼 namespace userCenter\login { //php代碼 }
命名空間不能嵌套或在同一代碼處聲明多次(只有最后一次會(huì)被識(shí)別)。但是,你能在同一個(gè)文件中定義多個(gè)命名空間化的代碼,比較合適的做法是每個(gè)文件定義一個(gè)命名空間(可以是相同命名空間)。
2. 調(diào)用namespace
\userCenter\register; //絕對(duì)調(diào)用 userCenter\login; //相對(duì)調(diào)用 use userCenter\register; //引用空間 use userCenter\register as reg; //引用空間并加別名
3. 實(shí)例說(shuō)明
login.class.php
<?php namespace userCenter; function check_username(){ echo "login OK<br>"; } class login{ public function save(){ echo "login had saved<br>"; } } ?>
regist.class.php
<?php namespace userCenter\regist { function check_username() { echo "regist OK<br>"; } class regist{ public function save(){ echo "regist had saved<br>"; } } } ?>
test.php
<?php require "login.class.php"; require "regist.class.php"; use userCenter\regist; //使用use調(diào)用空間 use userCenter\regist as reg; //as定義別名 echo \userCenter\check_username(); //絕對(duì)調(diào)用 $login = new \userCenter\login(); echo $login->save(); echo regist\check_username(); //相對(duì)調(diào)用 echo reg\check_username(); //別名調(diào)用 $regist = new reg\regist(); echo $regist->save();
使用use,比絕對(duì)調(diào)用要好一點(diǎn),好比給class,function等加了一個(gè)前綴,這樣看起來(lái)就比較清楚了。
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
關(guān)于php mvc開(kāi)發(fā)模式的感想
使用mvc開(kāi)發(fā)已經(jīng)有一段很長(zhǎng)時(shí)間了,發(fā)現(xiàn)了一些問(wèn)題。2011-06-06淺析PHP中Collection 類(lèi)的設(shè)計(jì)
本篇文章是對(duì)PHP中Collection 類(lèi)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06PHP常用日期加減計(jì)算方法實(shí)例小結(jié)
這篇文章主要介紹了PHP常用日期加減計(jì)算方法,結(jié)合實(shí)例形式總結(jié)分析了php日期計(jì)算常見(jiàn)的時(shí)區(qū)設(shè)置、date日期轉(zhuǎn)換、計(jì)算等相關(guān)操作技巧,需要的朋友可以參考下2018-07-07PHP實(shí)現(xiàn)基于圖的深度優(yōu)先遍歷輸出1,2,3...n的全排列功能
這篇文章主要介紹了PHP實(shí)現(xiàn)基于圖的深度優(yōu)先遍歷輸出1,2,3...n的全排列功能,涉及php數(shù)據(jù)結(jié)構(gòu)中圖的遍歷及全排列相關(guān)數(shù)學(xué)運(yùn)算技巧,需要的朋友可以參考下2017-11-11