powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Алиасы классов
9 сообщений из 9, страница 1 из 1
[PHP] Алиасы классов
    #38933358
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть код
Код: php
1.
2.
3.
namespace ns;

class Test {...}


Чем отличаются такие конструкции
Код: php
1.
2.
3.
class_alias(Test:class, 'T1');
use \ns\Test as T2;
use Test as T3;


?

Все происходит в пространстве ns

С уважением, Vasilisk
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934406
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_,

а что в мануале это не написано?
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934458
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r uа что в мануале это не написано?Я не нашел
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934467
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934474
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
r u,

Это все отлично, но исходный вопрос был_Vasilisk_Чем отличаются такие конструкцииМожет я тупой, но из приведенных статей я не вижу никаких отличий. Т.е. все три метода дают полностью идентичный результат
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934567
Фотография r u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_я не вижу никаких отличий
нуу хз, что тебе ответить.
функция и оператор - какбы разные вещи.
с разными возможностями и степенью контроля...
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934867
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное тем же, что и прямой вызов функции или вызов через call_user_func_array
Так понимаю операторы "use " могут выдать ошибку в parse time, когда class_alias динамичен и может ругаться только в runtime. Могу ошибаться.
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38934881
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А еще use делает класс доступным в текущем пространстве имен, а class_alias нет.
...
Рейтинг: 0 / 0
[PHP] Алиасы классов
    #38942922
Фотография _Vasilisk_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_Чем отличаются такие конструкции
Код: php
1.
2.
3.
class_alias(Test:class, 'T1');
use \ns\Test as T2;
use Test as T3;

Один вопрос снят. Согласно документацииавторОбратите внимание, что для имен в пространстве имен (абсолютные имена, содержащие разделитель пространств имен, такие как Foo\Bar, в отличие от глобальных имен, которые его не содержат, такие как FooBar) нет необходимости в начальном обратном слеше (\) и его присутствие там не рекомендуется, так как импортируемые имена должны быть абсолютными и не обрабатываются относительно текущего пространства имен. Т.е.
Код: php
1.
use Test as T3;

эквивалентно
Код: php
1.
use \Test as T3;
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Алиасы классов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]