Документация PHP


Пространства имён

Использование пространств имён

Пространства имён

PHP Manual


Определение пространства имён

Пространство имён определяется посредством ключевого слова namespace, которое должно находиться в самом начале файла. Пример:

Пример #1 Определение пространства имён.

<?php
     namespace MyProject
::DB;

     const 
CONNECT_OK 1;

     class 
Connection /* ... */ }

     function 
connect() { /* ... */  }

     
?>

Это пространство имён может быть использовано в разных файлах.

Пространства имён могут включать определения классов, констант и функций. Но не должны включать обычного кода.

Определение пространства имён работает так:

  • Внутри пространства имён все имена классов, функций и констант автоматически будут префиксированы именем пространства имён. Имена классов при вызове должны быть полными, так например при вызове класса из примера выше должно использоваться следующее имя MyProject::DB::Connection.
  • Определения констант создают константы, состоящие из имени пространства имён и имени константы. Как и константы классов - константы пространства имён могут содержать данные только скалярного типа.
  • Поиск неквалифицированного имени класса (т.е. не содержащего ::) осуществляется в следующей последовательности:

    1. Попытка найти класс в текущем пространстве имён (т.е. префиксирование класса именем текущего пространства имён) без попытки автозагрузки (autoload).
    2. Попытка найти класс в глобальном пространстве имён без попытки автозагрузки (autoload).
    3. Попытка автозагрузки в текущем пространстве имён.
    4. В случае неудачи предыдущего - отказ.

  • Поиск неквалифицированного имени функции (т.е. не включающего ::) во время выполнения производится сначала в текущем пространстве имён, затем в глобальном пространстве имён.

  • Поиск неквалифицированного имени константы производится сначала в текущем пространстве имён, затем среди глобально объявленных констант.

Смотри так же правила разбора имён.


Пространства имён

Использование пространств имён

Пространства имён

PHP Manual

SAPE все усложнил?

MainLink - простая и прибыльная продажа ссылок!

Последние поступления:

Размещена 10 августа 2020 года

Я по ТВ видел, что через 10 лет мы будем жить лучше, чем в Германии...
Я не понял, что это они с Германией сделать хотят?!

читать далее…

ТехЗадание на Землю

Размещена 14 марта 2018 года

Пpоект Genesis (из коpпоpативной пеpеписки)

читать далее…

Шпаргалка по работе с Vim

Размещена 05 декабря 2017 года

Vim довольно мощный редактор, но работа с ним не всегда наглядна.
Например если нужно отредактировать какой-то файл например при помощи crontab, без знания специфики работы с viv никак.

читать далее…

Ошибка: Error: Cannot find a valid baseurl for repo

Размещена 13 сентабря 2017 года

Если возникает ошибка на centos 5 вида
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
Eg. Invalid release/

читать далее…

Linux Optimization

Размещена 30 июля 2012 года

Prelink

читать далее…