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

Security Awareness: Keamanan Informasi & C.I.A Triad

12/11/2024

Security Awareness: Keamanan Informasi & C.I.A Triad

Di era digital saat ini, keamanan informasi dan data pribadi sangat penting. Semakin banyak kita bergantung pada teknologi dan layanan online, semakin besar risiko kita menjadi target serangan cyber. Hingga…

Lihat
Agent AI Datavidya untuk Bisnis

18/06/2025

Agent AI Datavidya untuk Bisnis

Pernah merasa bisnis jalan di tempat meskipun data sudah menumpuk? 🤔Angka-angka penjualan, laporan stok, hingga perilaku pelanggan sering kali hanya berakhir sebagai tumpukan dokumen. Sayangnya, semua data itu tidak serta-merta…

Lihat
Basic LAMP Configuration

11/11/2024

Basic LAMP Configuration

Basic LAMP Configuration merupakan akronim dari sistem operasi Linux, Apache HTTP Server, MySQL relational database management system, dan bahasa pemrograman. Hal itu mewakili sebuah konsep dalam membangun infrastruktur aplikasi web mencakup…

Lihat