Membuat Method Chaining di PHP

Contoh Chaining Method

Pernah lihat kode seperti diatas? Dimana kita memanggil beberapa method dalam 1 baris saja. Itulah yang disebut dengan Method Chaining, Method Chaining adalah teknik agar kita bisa memanggil beberapa method secara secara berantai. Keuntungan jika kita menggunakan cara seperti ini adalah akan lebih mudah ketika kita menggunakan Class yang dibuat. Jika contoh kode diatas tidak menggunakan chaining method, maka kurang lebih akan menjadi seperti ini:

Oh iya sebelum dilanjutkan saya asumsikan teman-teman sudah mengerti OOP dan faham cara penggunaan OOP di PHP ya 🙂

Method Chaining ini sebetulnya bisa kita terapkan di hampir semua bahasa pemrograman (CMIIW), akan tetapi pada contoh kali ini kita akan menunjukan implementasinya di PHP saja, bahasa pemrograman lain juga kurang lebih sama kok. Intinya adalah kita harus me- return object sendiri ($this) pada setiap method agar bisa dioperasikan lagi pada method selanjutnya, kecuali pada method akhir/final yang hanya akan mengembalikan nilai atau melakukan proses akhir.

Sudah terbayang? Jika belum, coba cek contoh kode dibawah:

Pada contoh diatas method setName(), setGender() dan setAddress() me-return $this karena itu setelah memanggil salah satu dari ketiga method diatas pada baris yang sama kita bisa kembali memanggil method lain yang ada di object tersebut. Namun pada method sayHi() kita tidak akan bisa lagi memanggil method lain karena method ini adalah method akhir/final (kebetulan return nya berupa string, nanti bisa apa aja sesuai kebutuhan).

Jika contoh kode diatas dijalankan, maka outputnya akan seperti ini:

Sampai sini mulai kebayang? Mudah-mudahan udah 😀 Agar lebih memahami lagi mungkin temen-temen bisa mencoba hal yang sama dengan kasus yang berbeda. Class, method, property, dsb nya bisa disesuaikan dengan keinginan/kebutuhan teman-teman, yang penting nilai kembalian ( return) dari method harus $this.

Oke sekian tutorial kali ini, semoga bermanfaat, jika masih ada yang kebingungan bisa curat coret di kolom komentar. Terima kasih 🙂

Originally published at https://azishapidin.com on September 21, 2019.

Seorang Software Developer dengan expertise sebagai Backend Developer, sering membuat REST API dan juga Web-Based Application (Full-Stack)

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Azis Hapidin

Azis Hapidin

Seorang Software Developer dengan expertise sebagai Backend Developer, sering membuat REST API dan juga Web-Based Application (Full-Stack)

More from Medium

Tutorial: Docker PHP Development setup for the generation of TikTok attention span developers

Example Dockerfile

How should beginners approach PHP?

PHP

PHP: Foreach easier than ever

How to get the full URL of a page in PHP