PHP における名前空間は、PHP のライブラリが巨大化したときの スコープの問題を解決するために設計されています。 PHP では、すべてのクラス定義はグローバルです。 したがって、ライブラリの作者がさまざまな公開 API を作成する際には、 他のライブラリの同様の機能との競合に注意する必要があります。 お互いに名前が重複しないよう、一意な名前を選択する必要があるのです。 このとき、通常はクラス名を先頭に付加することで一意な名前を作成します。 たとえばデータベースのクラスなら、その先頭に My_Library_DB を付加するなどといったことです。 ライブラリが巨大化するにつれて、このプレフィックスもどんどん追加され、 非常に長ったらしい名前になってしまいます。
名前空間を使用すると、そのクラスを参照する際に毎回長い名前を使用する必要がなくなります。 コードの可読性を保ったまま、グローバル空間の共用の問題を解決することができます。
名前空間は、PHP 5.3.0 以降で使用可能です。 このセクションの内容は実験的なものであり、変更される可能性があります。