本文實(shí)例講述了PHP命名空間定義與用法。分享給大家供大家參考,具體如下:
php的命名空間的樣式跟linux的路徑很相似。
我們使用文件的路徑作為命名空間。
定義命名空間
MVC\Model\index.php
代碼
?php
namespace MVC\Model;
class Index
{
public static function test()
{
echo "test#Model";
}
}
使用命名空間
MVC\Application\index.php
代碼
?php
namespace MVC\Application;
use \MVC\Model;
require_once "../Model/index.php";
class Index
{
public static function test()
{
echo "test#Application";
}
}
//Index::test(); //輸出test#Application
Model\Index::test();//輸出test#Model
其中use \MVC\Model;
等價(jià)于use \MVC\Model as Model;
。
所以我們才可以用Model\Index::test();
這種方式調(diào)用Model下面的index類。
我們?cè)诼暶魇褂妹臻g的,聲明的路徑越具體,我們使用起來(lái)就越方便。
貼上幾段代碼,感受下~
1) use \MVC
use \MVC;
require_once "../Model/index.php";
MVC\Model\Index::test();//輸出test#Model
2)use \MVC\Model
use \MVC\Model;
require_once "../Model/index.php";
Model\Index::test();//輸出test#Model
3) use \MVC\Model\Index
use \MVC\Model\Index;
require_once "../Model/index.php";
Index::test();//輸出test#Model
通過(guò)上面代碼的分析,我們可以看到。當(dāng)使用命名空間時(shí)的聲明具體到類時(shí),我們使用Index::test()
這種方式就可以調(diào)用相關(guān)類,是不是不樓痕跡,但是我們要注意這種時(shí)候要避免類名的重復(fù),否則會(huì)報(bào)錯(cuò)。
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語(yǔ)法入門教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- php的命名空間與自動(dòng)加載實(shí)現(xiàn)方法
- php命名空間設(shè)計(jì)思想、用法與缺點(diǎn)分析
- PHP進(jìn)階學(xué)習(xí)之命名空間基本用法分析
- PHP中命名空間的使用例子
- 實(shí)例講解PHP中使用命名空間
- PHP命名空間簡(jiǎn)單用法示例
- PHP命名空間與自動(dòng)加載類詳解
- PHP命名空間namespace及use的簡(jiǎn)單用法分析
- 如何理解PHP核心特性命名空間