PHP - class_alias
Třída
Metoda - class_alias
(PHP 5 >= 5.3.0, PHP 7)
Vytvoří alias, neboli přezdívku, pro zadanou třídu. Nový alias je reference na původní třídu.
Procedurální
- function class_alias (string $original, string $alias, bool $autoload = TRUE) : bool
Parametry
| Název | Datový typ | Výchozí hodnota | Popis |
|---|---|---|---|
| $original | string | Původní třída. | |
| $alias | string | Název aliasu ve formě textového řetězce. | |
| $autoload | bool | TRUE | Hodnota typu bool, která definuje, jestli se má pokusit o automatické načtení původní třídy. |
Návratové hodnoty
Vrací: bool
V případě úspěšného vytvoření aliasu, vrátí hodnotu
true, jinak v případě selhání hodnotu false.
Příklady
Funkce class_alias() má využití např. při
refaktorování staršího PHP než verze 5.3, které ještě
neobsahovalo namespaces. V té době se ve velkých projektech z
důvodu jedinečnosti mohli vyskytnout nepřiměřeně dlouhé názvy
tříd, class_alias() může být rychlé řešení:
$stary_objekt = new Moje_Stara_Knihovna_S_Pseudo_Namespace_Objekt(); class_alias('Moje_Stara_Knihovna_S_Pseudo_Namespace_Objekt', 'MujObjekt'); $novy_objekt = new MujObjekt();
Další případ využití jsou podmíněné importy:
namespace PageContent; if (extension_loaded('gd')) { class_alias('Images\\GdImage','Image'); } else { class_alias('Images\\MagicImage', 'Image'); } class ImageRenderer { public function __construct(Image $img) {} }
Související manuály
- function get_parent_class (mixed $object) : string
- function is_subclass_of (mixed $object, string $class_name, bool $allow_string = TRUE) : bool

