Sınıflar ve nesneler (PHP 4)
PHP Manual

extends sözcüğü

Çoğunlukla başka başka sınıflar içinde benzer değişkenler ve işlevler kullanmak gerekir. Aslında, belli projelerin ihtiyaçlarına göre uyarlanabilecek genel bir sınıf tanımınız olsa fena olmazdı. Bunu sağlamak için, sınıflar başka sınıfları genişleterek tanımlanabilir. Genişletilmiş veya türetilmiş sınıflar ana sınıfla ortak değişken ve işlevlere (aslında bunlar kalıtsal niteliklerdir) ek olarak kendi işlev ve değişkenleri olan sınıflardır. Miras alınan değişken ve işlevleri tanımsız yapmak mümkün değildir. Bir türetilmiş sınıf daima tek bir ana sınıfa bağımlıdır, yani çoklu kalıtım desteklenmemektedir. Sınıflar extends anahtar sözcüğü kullanılarak türetilirler.

<?php
class Sahipli_Sepet extends Sepet {
    var 
$sahibi;

    function 
sahip_ata ($isim) {
        
$this->sahibi $isim;
    }
}
?>

Bu örnekte, Sepet sınıfının tüm değişken ve işlevlerine ek olarak $sahibi değişkenine ve sahip_ata işlevine sahip Sahipli_Sepet sınıfı tanımlanmaktadır. Böylece sahipli bir sepet oluşturabilir ve sepetleri sahibine göre bir araya toplayabilirsiniz. Ayrıca, normal sepetin işlevlerini sahipli sepette de kullanabilirsiniz:

<?php
$ssepet 
= new Sahipli_Sepet// sahipli bir sepet oluşturalım
$ssepet->sahip_ata("enis");  // sepetin sahibi
print $ssepet->sahibi;       // sepet sahibinin ismini basar
$ssepet->mal_ekle("10"1);  // (işlevsellik Sepet sınıfının mirasıdır)
?>

Buna ebeveyn-çocuk ilişkisi de denir. İlk oluşturduğunuz sınıfa ebeveyn sınıf dersek, extends sözcüğünü kullanarak ondan türettiğiniz sınıflar çocuk sınıflar olur. Bu yeni çocuk sınıfları başka çocuk sınıfları (yani ilk sınıfın torunlarını) türetmek için kullanabilirsiniz.

Bilginize:

Sınıfların kullanılmadan önce tanımlanmış olmaları gerekir. Sahipli_Sepet sınıfını Sepet sınıfından türetmek için önce Sepet sınıfını tanımlamanız gerekir. Kurumsal_Sahipli_Sepet sınıfını Sahipli_Sepet sınıfından türetmek için de önce Sahipli_Sepet sınıfını tanımlamanız gerekir. Kısaca: Sınıfların tanımlanma sırası önemlidir.


Sınıflar ve nesneler (PHP 4)
PHP Manual