(PHP 5 >= 5.3.0, PHP 7, PHP 8)
class_alias — Creates an alias for a class
Creates an alias named alias
based on the user defined class class
.
The aliased class is exactly the same as the original class.
Note: As of PHP 8.3.0, class_alias() also supports creating an alias of an PHP internal class.
class
The original class.
alias
The alias name for the class.
autoload
Whether to autoload if the original class is not found.
Version | Description |
---|---|
8.3.0 | class_alias() now supports creating an alias of an internal class. |
Example #1 class_alias() example
<?php
class Foo { }
class_alias('Foo', 'Bar');
$a = new Foo;
$b = new Bar;
// the objects are the same
var_dump($a == $b, $a === $b);
var_dump($a instanceof $b);
// the classes are the same
var_dump($a instanceof Foo);
var_dump($a instanceof Bar);
var_dump($b instanceof Foo);
var_dump($b instanceof Bar);
?>
The above example will output:
bool(true) bool(false) bool(true) bool(true) bool(true) bool(true) bool(true)
Note:
Class names are case-insensitive in PHP, and this is reflected in this function. Aliases created by class_alias() are declared in lowercase. This means that for a class
MyClass
, theclass_alias('MyClass', 'MyClassAlias')
call will declare a new class alias namedmyclassalias
.