大家都知道由於PHP語法裡不支援函數重載機制,如果一個應用程式裡有兩個同名的方法,怎麼辦呢?
在Yii 框架為了避免名字重複造成問題,全部的類別前邊都有 C 字樣,而在ThinkPHP裡就引入了命名空間這個概念。
a) 命名空間是虛擬的定義空間,不是真實存在目錄
b) 命名空間的分隔符號都是反斜線\
c) 非限定名稱:getName() 取得與其最近的命名空間的getName()
d) 限定名稱:beijinggetName() 相對方式
透過最近的命名空間定位beijinggetName():如下面的實例,他會認為在目前目錄下的beijinggetName(),因此會找dalianbeijinggetName()。此時,因為找不到就會報錯了! !
e) 完全限定名稱: beijinggetName() 直接在指定的命名空間獲得具體元素
f) 命名空間針對:函數、類別名稱、常數三者其作用,在命名空間裡邊把這三種統稱為元素
操作實例如下:
#推薦教學:《TP5》
以上是THINKPHP中的命名空間詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!