array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'tr', ), 'this' => array ( 0 => 'function.class-alias.php', 1 => 'class_alias', ), 'up' => array ( 0 => 'ref.classobj.php', 1 => 'Sınıf ve Nesne İşlevleri', ), 'prev' => array ( 0 => 'function.autoload.php', 1 => '__autoload', ), 'next' => array ( 0 => 'function.class-exists.php', 1 => 'class_exists', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'tr', 'path' => 'reference/classobj/functions/class-alias.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
class_alias — Sınıfa bir takma ad oluşturur
Kullanıcı tanımlı sınıf
sınıfına
takma_ad
adıyla bir sınıf oluşturur.
Takma adlı sınıf özgün sınıfla tamamen aynıdır.
sınıf
Özgün sınıfın adı.
takma_ad
Sınıf için takma ad.
otomatik_yükle
Yüklü değilse autoload çağrısı yapılıp yapılmayacağı.
Örnek 1 - class_alias() örneği
<?php
class Foo { }
class_alias('Foo', 'Bar');
$a = new Foo;
$b = new Bar;
// nesneler aynıdır
var_dump($a == $b, $a === $b);
var_dump($a instanceof $b);
// sınıflar aynıdır
var_dump($a instanceof Foo);
var_dump($a instanceof Bar);
var_dump($b instanceof Foo);
var_dump($b instanceof Bar);
?>
Yukarıdaki örneğin çıktısı:
bool(true) bool(false) bool(true) bool(true) bool(true) bool(true) bool(true)
Bilginize:
Sınıf adları PHP'de harf büyüklüğüne duyarlı değildir ve bu işlev için de bu böyledir. class_alias() tarafından oluşturulan takma adlar küçük harfle bildirilir. Bu,
Sınıfım
sınıfı için,class_alias('Sınıfım', 'RumuzSınıfım')
çağrısının,rumuzsınıfım
adında yeni bir sınıf takma adı bildireceği anlamına gelir.