class_alias în PHP

Creează un nume alternativ pentru o clasă existentă. Ambele nume se referă la aceeași clasă.

Sintaxă
class_alias(string $class, string $alias, bool $autoload = true): bool

Ce face class_alias

class_alias este folosit mai ales când redenumești o clasă într-o bibliotecă: păstrezi numele vechi ca alias, ca să nu se strice codul care îl folosește. Aliasul nu creează o clasă nouă: get_class returnează numele original.

Parametri

Parametru Descriere
$class Numele clasei existente.
$alias Noul nume.
$autoload Opțional. false ca să nu pornească autoloader-ul dacă clasa nu e încărcată.

Ce returnează

true la succes. Dacă aliasul există deja, apare un avertisment și returnează false.

Exemple

Exemplul 1: Nume vechi păstrat pentru compatibilitate

<?php
class FacturaFiscala
{
    public function serie(): string { return "DEX"; }
}

class_alias("FacturaFiscala", "Factura");

$f = new Factura();
echo $f->serie() . "\n";
echo get_class($f) . "\n";
var_dump($f instanceof Factura);

Rezultat

DEX
FacturaFiscala
bool(true)

Greșeli frecvente

  • Folosești aliasul ca să ai „două clase”. Este aceeași clasă: o proprietate statică schimbată prin alias se schimbă și prin numele original.

Comenzi înrudite