宣告名稱空間

名稱空間宣告可以如下所示:

  • namespace MyProject; - 宣告名稱空間 MyProject
  • namespace MyProject\Security\Cryptography; - 宣告巢狀的名稱空間
  • namespace MyProject { ... } - 使用括號括起來宣告名稱空間。

建議只為每個檔案宣告一個名稱空間,即使你可以在單個檔案中宣告任意多個:

namespace First {
    class A { ... }; // Define class A in the namespace First.
}

namespace Second {
    class B { ... }; // Define class B in the namespace Second.
}

namespace {
    class C { ... }; // Define class C in the root namespace.
}

每次宣告名稱空間時,之後定義的類都屬於該名稱空間:

namespace MyProject\Shapes;

class Rectangle { ... }
class Square { ... }
class Circle { ... }

名稱空間宣告可以在不同的檔案中多次使用。上面的示例在單個檔案中的 MyProject\Shapes 名稱空間中定義了三個類。優選地,這將被分成三個檔案,每個檔案以 namespace MyProject\Shapes; 開頭。這在 PSR-4 標準示例中有更詳細的解釋。