PHP Trait

PHP Trait

PHP Trait adalah mekanisme untuk menggunakan ulang sebuah code pada sebuah inheritance. Trait digunakan untuk mengurangi batasan dari sebuah inheritance dengan memungkinkan developer untuk menggunakan ulang kumpulan methods secara mudah pada beberapa class yang memiliki hirarki berbeda. Trait digunakan untuk mengurangi kompleksitas dan menghindari masalah yang sama pada beberapa inheritance.

PHP Trait serupa dengan Class, tetapi hanya digunakan untuk mengelompokan fungsi agar menjadi paling konsisten. Trait tidak bisa berdiri sendiri. Trait adalah tambahan yang bisa dimasukan pada fungsi tanpa harus menggunakan inheritance dari class lain.

Contoh penggunaan Trait :

<!–?php

trait Crud{

    function create(){

        return ‘create action’;

    }

}

trait Authentication{

    function checkLogin(){

        return ‘cek login action’;

    }

}

class Barang{

    use Crud,Authentication;

}

class Vendor{

    use Crud,Authentication;

}

$barang     = new Barang;

echo $barang->create();

echo $barang->checkLogin();

Pada contoh di atas, kelas Barang dan Vendor tidak memiliki fungsi create dan checkLogin secara langsung. Namun, kode tetap dapat berjalan tanpa menghasilkan error karena kedua kelas tersebut menggunakan trait bernama Crud dan Authentication. Trait ini menyediakan implementasi fungsi create dan checkLogin, sehingga meskipun fungsi tersebut tidak ada di dalam definisi asli kelas Barang dan Vendor, mereka tetap dapat memanfaatkannya. Dengan demikian, penggunaan trait memungkinkan pengembang untuk menambahkan fungsionalitas ke beberapa kelas secara efisien, tanpa harus menduplikasi kode atau membuat hierarki warisan yang kompleks.

Apabila dalam suatu class terdapat method yang sama dengan Trait yang digunakan, maka fungsi pada Class tersebut akan ditimpa.

Jika informasi seperti ini bermanfaat, jangan lupa untuk terus ikuti kami untuk mendapatkan informasi update seputar dunia teknologi menarik lainnya.

Berita Rekomendasi

Siap Bekerja dengan Starter Kit New Normal

11/11/2024

Siap Bekerja dengan Starter Kit New Normal

Pemerintah sudah memutuskan untuk mengakhiri masa PSBB (Pembatasan Sosial Berskala Besar) secepatnya dengan beberapa tahapan, meski pandemi Covid-19 masih terjadi. Karena selama 3 bulan masa pembatasan sosial telah membawa begitu…

Lihat
Konsep Element pada Beanstalkd

12/11/2024

Konsep Element pada Beanstalkd

Apa Itu Beanstalkd?Beanstalkd adalah sebuah sistem manajemen antrian yang, pada dasarnya, mendasarkan operasinya pada beberapa konsep inti yang menjadikannya tools yang sangat berguna dalam pengembangan aplikasi. Sistem ini sangat relevan…

Lihat
Hashicorp Vault Teknologi Penyimpanan Secret

12/11/2024

Hashicorp Vault Teknologi Penyimpanan Secret

Saat ini, keamanan informasi dan data sensitive menjadi hal yang prioritas ketika mengembangkan aplikasi. Terutama dalam hal ini, penyimpanan secret atau rahasia penting seperti database password, API keys, certificate, System…

Lihat