За последние 24 часа нас посетили 32857 программистов и 1820 роботов. Сейчас ищет 851 программист ...

Относительные имена в namespace

Тема в разделе "PHP для новичков", создана пользователем Алекс8, 13 дек 2017.

  1. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @Алекс8 то что ты выложил будет работать только с одним файлом - либо первый либо второй, тк идентичны полные названия классов. Что мешает себя разместить в другом неймспейсе и/или придумать другое имя класса?
    --- Добавлено ---
    если быть точным - у двух классов. Будет ошибка повторной декларации класса - см выше.
     
    Алекс8 нравится это.
  2. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    первый файл мой)) второй файл сторонний вроде как)) хотелось ничего не меняя пользоваться обеими))
     
  3. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Есть рекомендация когда начинает разработку нового проекта, неймспейсы задавать начиная c имени домена задом наперед. Так ты будешь уверен, что твое пространство имен уникальное)). И не будет таких конфликтов.
    --- Добавлено ---
    И я твой автолоадер переделал на два ))
    PHP:
    1. function oneLoad($classname) {
    2.  
    3.     $file = __DIR__ . DIRECTORY_SEPARATOR . str_replace('\\', DIRECTORY_SEPARATOR, $classname) . '.php';
    4.     if (file_exists($file)) {
    5.         include $file;
    6.     }
    7. }
    8.  
    9. function twoLoad($classname) {
    10.     $path = __DIR__ . DIRECTORY_SEPARATOR . 'vendors' . DIRECTORY_SEPARATOR . 'core' . DIRECTORY_SEPARATOR;
    11.     $classname = str_replace('\\', DIRECTORY_SEPARATOR, $classname);
    12.     $file = $path . $classname . '.php';
    13.     if (file_exists($file)) {
    14.         include $file;
    15.     }
    16. }
    17.  
    --- Добавлено ---
    Возможно тебе не подойдут, смотрю в своие ты еще нижнее подчеркивание используешь.
     
    Алекс8 нравится это.
  4. Алекс8

    Алекс8 Активный пользователь

    С нами с:
    18 май 2017
    Сообщения:
    1.730
    Симпатии:
    359
    да это пример с PSR)) взял оттуда)
    Спасибо))