PHP'de zincirleme metodlar (fluent interfaces), bir sınıfın metotlarının sırayla ve ardışık olarak çağrılmasını sağlayan bir tasarım desenidir. Bu desen, bir metotun bir nesne üzerinde işlem yapması ve ardından aynı nesne üzerinde başka bir metotun çağrılmasını mümkün kılar. İşte bir örnek:
<?php
class ZincirlemeSinif {
// Sınıfın içindeki bir özellik
private $veri;
// Birinci metot
public function birinciMetot($veri) {
$this->veri = $veri;
// Zincirleme için $this'i döndür
return $this;
}
// İkinci metot
public function ikinciMetot() {
echo "Veri: {$this->veri}
";
// Zincirleme için $this'i döndür
return $this;
}
// Üçüncü metot
public function ucuncuMetot() {
echo "Üçüncü metot çağrıldı.
";
// Zincirleme için $this'i döndür
return $this;
}
}
// Zincirleme metotları kullanarak bir örnek oluşturma
$ornek = new ZincirlemeSinif();
// Zincirleme metotları çağırma
$ornek->birinciMetot("Merhaba")->ikinciMetot()->ucuncuMetot();
?>
Bu örnekte, ZincirlemeSinif
adında bir sınıf tanımlanmış ve bu sınıfta üç adet metod bulunmaktadır. Her metot, $this
ifadesini döndürerek zincirleme yapılmasını sağlar. Bu sayede, aynı nesne üzerinde sırayla metotlar çağrılabilir ve bu şekilde kod okunabilirliği artırılabilir.