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

Проблемы совпадения имен снимаются введением пространств имен.

PHP константы, классы и функции могут быть сгруппированы в библиотеки пространств имен (namespaced libraries).

Как определить пространство имён в пхп

В коде, пространства имен определяются с помощью единственного слова namespace в самом начале Вашего PHP файла. Это слово должно быть самой первой командой (за исключением declare) и =

  1. ни не-PHP код,
  2. ни HTML,
  3. ни даже пробел

не должен предшествовать этой команде, например:


    <?php
    // define this code in the 'MyProject' namespace
    namespace MyProject;
     
    // ... code ...

Подпространства имен (Sub-namespaces)

PHP дает Вам возможность определять иерархию пространств имен таким образом, чтобы библиотеки могли быть соподчинены друг другу. Получившиеся подпространства имен разделяются с помощью обратных слэшей \, например:

    MyProject\SubName
    MyProject\Database\MySQL
    CompanyName\MyProject\Library\Common\Widget1

а если в коде ,то =
описание в пространстве:


    <?php
    // application library 1
    namespace App\Lib1;
     
    const MYCONST = 'App\Lib1\MYCONST';
     
    function MyFunction() {
      return __FUNCTION__;
    }
     
    class MyClass {
      static function WhoAmI() {
        return __METHOD__;
      }
    }
    ?>

вызов с указание пространства описанного выше =


    <?php
    header('Content-type: text/plain');
    require_once('lib1.php');
     
    echo \App\Lib1\MYCONST . "\n";
    echo \App\Lib1\MyFunction() . "\n";
    echo \App\Lib1\MyClass::WhoAmI() . "\n";
    ?>

подробнее = http://habrahabr.ru/post/72033/