Задать вопрос
@eventHorizont

Конфликт имен в PHP или нет?

Здравствуйте, сегодня столкнулся со следующей проблемой: есть класс A в глобальной зоне видимости, есть ненаследуемый от него одноименный \A\...\...\A и несколько других классов в том же сегменте

глобальный:
class A
{
...
}

локальный:
namespace A\...\...
{
use A as BaseA;
...
class A extends ...
{
...
}
}

Как только класс \A\...\...\A инстанцировался, все остальные в зоне \A\...\... перестают воспринимать глобальный A и выдают ошибку "Cannot use A as A because the name is already in use". Подскажите как решить это.
  • Вопрос задан
  • 318 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Skillbox
    PHP-разработчик. Базовый уровень
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 2
mannaro
@mannaro
Умею профессионально гуглить
Не использовать глобальную область видимости. Это плохой тон.
Ответ написан
Комментировать
@Alzasr
Обращаться к классам из глобальной зоны видимости можно через глобальный неймспейс \, т.е. \A
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы