PHP OOP Sihirli(Magic) Metotlar

Merhaba arkadaşlar bu yazımda sizlere PHP‘de sınıf yapılarında kullanabileceğimiz sihirli(magic) metotlardan bahsedeceğim.

Tablodaki metotların hepsi PHP için sihirli metotlar olarak tanımlanır. Metot isimleri __ ile başlıyorsa bu PHP için sihirli metot olarak değerlendirilir. Aşağıdaki metotların dışında kendi metotlarımızı sihirli fonksiyon tanımından dolayı __ ile başlatmamalıyız.

Metot Açıklama
__construct() Sınıfın kurucu metotudur, sınıf başlatıldığında devereye girer.
__destruct() Sınıfın yıkıcı metotudur, sınıfın çalışması bittiğinde devereye girer.
__call() Sınıfın olmayan metotu çağrıldığında devreye girer.
__callStatic() Sınıfın olmayan static metotu çağrıldığında devreye girer.
__get() Sınıfın olmayan bir özelliği çağrıldığında devreye girer.
__set() Sınıfın olmayan bir özelliğine değer verildiğinde devreye girer.
__isset() Sınıfın olmayan bir özelliği isset() ve empty() ile kontrolünde devreye girer.
__unset() Sınıfın olmayan bir özelliği unset() ile tanımsız yapıldığında devreye girer.
__sleep() Sınıf nesnesine serialize işlemi uygulandığında devreye girer.
__wakeup() Sınıf nesnesine unserialize işlemi uygulandığında devreye girer.
__toString() Sınıf nesnesi echo yada print ile yazdırılmaya çalışıldığında devreye girer.
__invoke() Sınıf nesnesini bir metot olarak çağırdığımızda devreye girer.
__set_state() Sınıf nesnesini var_export() ile kullanıldığında devreye girer.
__clone() Clone metottu ile sınıfın kopyalanması durumunda devreye girer.

Bir cevap yazın