Извикване на статичен автоматично зареден клас без пространство от имена

Чудех се дали е възможно да използвам статичен PHP клас (или метод от този клас, трябва ли да кажа), без да го извиквам чрез пространството от имена ala laravel?

Осъзнавам, че това противоречи на естеството на пространствата от имена, но главно исках да ги използвам по същия начин, както прави Laravel, където мога просто да извикам Example::method('test') вместо \example\example\Example::method('test')


person Community    schedule 20.03.2015    source източник


Отговори (1)


В горната част на вашия файл декларирайте израз за използване, който създава псевдоним:

use example\example\Example;

Example::method('test'); //resolves to example\example\Example::('test')

Можете дори да използвате различно име с „като“:

use example\example\Example as MyAlias;

MyAlias::method('test'); //resolves to example\example\Example::('test')

Вижте http://php.net/manual/en/language.namespaces.importing.php за повече информация.

Забележка: Фасадите на laravel не работят по този начин, но мисля, че това е, което търсите. Ако искате нещо по-автоматично след псевдонима, ще трябва да включите някаква логика във вашия автозареждащ механизъм.

person user1842104    schedule 22.07.2015
comment
Да, това е, което търсих... Мисля. Самият аз съм малко объркан, след като прочетох въпроса си 2 години по-късно - тогава очевидно не различавах ляво от дясно - person ; 10.05.2017