Jadi, bagaimana jika suatu kelas perlu mewarisi beberapa perilaku?
Ciri-ciri digunakan untuk mendeklarasikan metode yang dapat digunakan di banyak kelas. Properti dapat memiliki metode dan metode abstrak yang dapat digunakan di banyak kelas dan metode dapat memiliki pengubah akses apa pun (publik, pribadi, atau dilindungi)
Properti dideklarasikan dengan kata kunci traits
Sintaksis
<?php trait TraitName { // some code... } ?>
Untuk menggunakan properti di kelas, gunakan kata kunci use
Sintaksis
<?php class MyClass { use TraitName; } ?>_
Mari kita lihat sebuah contoh
Contoh
<?php trait message1 { public function msg1() { echo "OOP Menyenangkan! "; } } class Welcome { use message1; } $obj = new Welcome(); $obj->msg1(); ?> /*Output OOP Menyenangkan! */
Penjelasan Kode
Di sini, kami mendeklarasikan fitur. pesan1. Kemudian, kami membuat kelas. Selamat datang. Kelas menggunakan ciri-ciri tersebut dan semua metode dalam ciri-ciri tersebut akan tersedia di kelas
Jika kelas lain perlu menggunakan fungsi msg1(), cukup gunakan properti message1 di kelas tersebut. Ini mengurangi duplikasi kode, karena tidak perlu mendeklarasikan ulang metode yang sama berulang kali
PHP – Menggunakan Beberapa Properti
Mari kita lihat contoh lain
Contoh
<?php trait message1 { public function msg1() { echo "OOP Menyenangkan! "; } } trait message2 { public function msg2() { echo "OOP mengurangi duplikasi kode!"; } } class Welcome { use message1; } class Welcome2 { use message1, message2; } $obj = new Welcome(); $obj->msg1(); echo "<br>"; $obj2 = new Welcome2(); $obj2->msg1(); $obj2->msg2(); ?> /*Output OOP Menyenangkan! OOP Menyenangkan! OOP mengurangi duplikasi kode! */
Penjelasan Kode
Di sini, kami akan mendeklarasikan dua fitur. pesan1 dan pesan2. Kemudian, kami membuat dua kelas. Selamat Datang dan Selamat Datang2. Kelas pertama (Welcome) menggunakan fitur message1 dan kelas kedua (Welcome2) menggunakan fitur message1 dan message2 (beberapa fitur dipisahkan dengan koma)
Cara membuat Trait yang pertama adalah menyiapkan directory terlebih dahulu. Saya membuat direktori baru agar susunan file program lebih rapi. Di sini saya membuat direktori app/Http/Traits. Kemudian buat file php biasa yang saya beri nama misalnya GeneralTrait. php. berikut isi filenya