Пространство имён определяется посредством ключевого слова namespace, которое должно находиться в самом начале файла. Пример:
Пример #1 Определение пространства имён.
<?php
namespace MyProject::DB;
const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */ }
?>
Это пространство имён может быть использовано в разных файлах.
Пространства имён могут включать определения классов, констант и функций. Но не должны включать обычного кода.
Определение пространства имён работает так:
Поиск неквалифицированного имени класса (т.е. не содержащего ::) осуществляется в следующей последовательности:
Поиск неквалифицированного имени функции (т.е. не включающего ::) во время выполнения производится сначала в текущем пространстве имён, затем в глобальном пространстве имён.
Поиск неквалифицированного имени константы производится сначала в текущем пространстве имён, затем среди глобально объявленных констант.
Смотри так же правила разбора имён.