PHP Dersleri #36 – OOP, Zincirleme (Chain) Metodlar


Herkese merhaba arkadaşlar, kodportali.com PHP derslerine kaldığı yerden tüm hızıyla Zincirleme (Chain) Methodlar ile devam ediyoruz.

PHP ‘de Zincirleme Methodlar Nedir?

Zincirleme methodlar yani ‘Chain Methods‘ Nesne İşleci ile çağırdığınız fonksiyonunun devamına yine o sınıftaki fonksiyon veya property ‘leri çekmeye devam edebilmemizdir. Yapmamız gereken tek şey işlemi yaptıktan sonra en son ‘return type‘ olarak yine o sınıfın kendisini göndermemizdir. Bu şekilde zincirleme şekilde method yapmış oluruz.

Yukarıda hemen örnek bir sınıf oluşturdum, dikkat ederseniz bir fonksiyon dışındaki tüm fonksiyonların return type ‘ı sınıfın kendisi yani ‘Chain‘. Fonksiyonlarda önce yapıcağımız işlemleri yaptım ve ardından ‘$this‘ gönderdim yani sınıfın kendisini temsil eden değişkeni. Eğer ‘new Chain‘ şeklinde gönderseydim sınıf yeniden oluşturulucaktı, onun için var olan sınıfı yollamanız burada önemli.

Burada ise sınıfı yeniden oluşturduk ve gördüğünüz gibi sınıfı atadığımız değişkeni sadece bir kere kullanarak Nesne İşleci (->) ile o sınıftaki fonksiyonları teker teker çağırdık. En son ‘getNumber()‘ fonksiyonu bize dönüş olarak ‘int‘ değeri verdiği için zincir orda kırıldı, değişkene de en son çağırdığımız fonksiyondan dönen değeri atamış oldu. En sonda o değeri ekrana yazdırdık. Kodumuzu çalıştırdığımız zaman ekranda ‘4‘ sayısı yazıcaktır. Bir örnekle daha devam edelim.

Bu örneğimizde ise yine ‘Chain‘ isimli bir sınıf oluşturduk ve bu sefer içine bir ‘constructor‘ koyduk. Parametre olarakta bir sayı istedik ve bu gelen sayıyı property değerine eşitledik. İçine ‘plus()‘ adında bir fonksiyon koyduk ve chain method olsun diye return olarak yine sınıfın kendisini gönderdik. Daha sonra altta sınıfı ‘new‘ anahtar kelimesi ile yeniden çağırdık. Parametre olarak 5 sayısını girip yedi kere ‘plus()‘ fonksiyonunu çağırdık. Sonuçta zincirleme bir method olduğundan sonsuza kadar aynı fonksiyonu çağırabiliriz. Bu fonksiyonumuzu her çağırdığımızda property ‘deki değer öncedeki derslerimizde gördüğümüz arttırma operatörü ile bir arttı. Sınıfı ‘(SınıfAdı(…parametreler))‘ şeklinde çağırmamızın sebebi ile eğer direk sınıfı build edip kullanıcaksak yani değişkene atamadan kullanıcaksak bu örnekteki gibi karışıklılık olmaması için iki parantez arasına yazılıp çağrılcak şey çağrılmalıdır. Aksi takdirde PHP size hata döndürücektir.

 

Evet bu dersimizinde burada sonuna geldik. Herhangi bir sorunuz olursa yorumlarda sorabilirsiniz.

Sitemizdeki tüm PHP dersleri için buraya tıklayabilirsiniz.

[Toplam:0    Ortalama:0/5]

Sizin Tepkiniz Nedir?

süper süper
0
süper
bilgilendirici bilgilendirici
0
bilgilendirici
beğenmedim beğenmedim
0
beğenmedim
beğendim beğendim
0
beğendim
Düşündürücü Düşündürücü
0
Düşündürücü
Anıl Mısırlıoğlu
Yazılım Mühendisi

0 Yorum

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bir format seçin
Kişisel Test
Kişiliğe dair bir şey ortaya çıkarmayı amaçlayan sorular dizisi
Basit Test
Bilgiyi kontrol etmek isteyen doğru ve yanlış cevaplı sorular dizisi
Anket
Karar vermek veya görüş belirlemek için oylama yapmak
Serbest Yazı
Yazılarınıza Görseller Bağlantılar Ekleyebilirsiniz
Liste
Klasik İnternet Listeleri
Geri Sayım Listesi
Klasik İnternet Geri Sayım Listeleri
Açık Liste
Kendi öğenizi gönderin ve en iyi sunum için oy verin
Oylanabilir Liste
En iyi liste öğesine karar vermek için yukarı veya aşağı basın
Fotoyla Anlatım
Kendi resimlerinizi yükleyin ve birşeyler anlatın
Video
Youtube, Vimeo veya Vine Kodları
Ses
Soundcloud veya Mixcloud İçerikleri
Görsel
Fotoğraf veya GIF
GIF
GIF Formatı