class_alias

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

class_aliasErzeugt einen Alias für eine Klasse

Beschreibung

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

Erzeugt einen Alias namens alias basierend auf der benutzerdefinierten Klasse class. Die abgeleitete Klasse ist genau die gleiche wie die Originalklasse.

Hinweis: Seit PHP 8.3.0 kann mit class_alias() auch ein Alias einer internen Klasse erstellt werden. creating an alias of an PHP internal class.

Parameter-Liste

class

Die Originalklasse

alias

Der Alias-Name für die Klasse

autoload

Gibt an, ob automatisch geladen werden soll, wenn die Originalklasse nicht gefunden wird

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Changelog

VersionBeschreibung
8.3.0 Mit class_alias() kann nun ein Alias einer internen Klasse erstellt werden.

Beispiele

Beispiel #1 class_alias()-Beispiel

<?php

class Foo { }

class_alias('Foo', 'Bar');

$a = new Foo;
$b = new Bar;

// die Objekte sind identisch
var_dump($a == $b, $a === $b);
var_dump($a instanceof $b);

// die Klassen sind identisch
var_dump($a instanceof Foo);
var_dump($a instanceof Bar);

var_dump($b instanceof Foo);
var_dump($b instanceof Bar);

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

bool(true) bool(false) bool(true) bool(true) bool(true) bool(true) bool(true)

Anmerkungen

Hinweis:

In PHP wird bei Klassennamen nicht zwischen Groß- und Kleinschreibung unterschieden, was sich auch in dieser Funktion widerspiegelt. Aliase, die mit class_alias() erstellt werden, werden in Kleinbuchstaben deklariert. Das bedeutet, dass im Fall der Klasse MyClass durch den Aufruf class_alias('MyClass', 'MyClassAlias') eine neue Alias-Klasse namens myclassalias erstellt wird.

Siehe auch

  • get_parent_class() - Gibt den Namen der Elternklasse eines Objektes zurück
  • is_subclass_of() - Prüft ob ein Objekt von der angegebenen Klasse abstammt oder sie implementiert
To Top