同乙個命名空間可以定義在多個檔案中,即允許將同乙個命名空間的內容分割存放在不同的檔案中。 也可以在同乙個檔案中定義多個命名空間。在同乙個檔案中定義多個命名空間有兩種語法形式。
對於類的動態例項化:如
$a
=
'classname'
;
$obj
= new
$a
;
一定要分清楚其定義的命名空間在**(要使用完全限定名稱)。
非限定名稱,或不包含字首的類名稱,例如 $a=new foo(); 或 foo::staticmethod();。如果當前命名空間是 currentnamespace,foo 將被解析為 currentnamespace\foo。如果使用 foo 的**是全域性的,不包含在任何命名空間中的**,則 foo 會被解析為foo。 警告:如果命名空間中的函式或常量未定義,則該非限定的函式名稱或常量名稱會被解析為全域性函式名稱或常量名稱。詳情參見 使用命名空間:後備全域性函式名稱/常量名稱。
限定名稱,或包含字首的名稱,例如 $a = new subnamespace\foo(); 或 subnamespace\foo::staticmethod();。如果當前的命名空間是 currentnamespace,則 foo 會被解析為 currentnamespace\subnamespace\foo。如果使用 foo 的**是全域性的,不包含在任何命名空間中的**,foo 會被解析為subnamespace\foo。
完全限定名稱,或包含了全域性字首操作符的名稱,例如, $a = new \currentnamespace\foo(); 或 \currentnamespace\foo::staticmethod();。在這種情況下,foo 總是被解析為**中的文字名(literal name)currentnamespace\foo。
91 php 命名空間 1
1.使用命名空間 基礎 a strlen hi 呼叫命名空間 foo 的strlen aa strlen hi 呼叫全域性函式strlen b ini all 訪問全域性常量 ini all c new exception error 例項化全域性類 exception 2.命名空間和動態語言特徵 ...
php 命名空間,PHP使用命名空間
介紹 命名空間中的類,函式或常量可以通過以下方式使用 在當前命名空間中使用類 指定相對於當前命名空間的命名空間 提供命名空間的全限定名稱 從當前命名空間 在此示例中,從test1.php載入了命名空間。沒有命名空間引用的函式或類名稱將訪問當前命名空間中的功能或類名稱 示例 test1.php nam...
php命名空間
namespace misszhou function var dump a 1 var dump var dump 1 表示呼叫全域性 解決常量的衝突問題 有點像子目錄的概念 namespace meizi 必須放第一行 include func.inc.php function one func...