Beberapa Trait dalam OOP PHP
Dalam kelas, anda boleh menggunakan bukan satu, tetapi beberapa
trait. Di sinilah kelebihan mereka
berbanding pewarisan. Trait yang diperlukan untuk digunakan
dalam kelas boleh dinyatakan dipisahkan dengan koma
selepas kata kunci use.
Mari kita lihat contoh. Katakan kita mempunyai dua trait. Pertama:
<?php
trait Helper1
{
private $name;
public function getName()
{
return $this->name;
}
}
?>
Kedua:
<?php
trait Helper2
{
private $age;
public function getAge()
{
return $this->age;
}
}
?>
Gunakan trait kami dalam kelas:
<?php
class User
{
use Helper1, Helper2; // sambungkan trait
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
Buat 3 trait dengan nama Trait1,
Trait2 dan Trait3. Katakan dalam trait pertama
ada kaedah method1, yang mengembalikan
1, dalam trait kedua - kaedah method2,
mengembalikan 2, dan dalam trait ketiga
- kaedah method3, mengembalikan 3.
Biarkan semua kaedah ini menjadi peribadi.
Buat kelas Test, yang menggunakan
ketiga-tiga trait yang kami buat. Buat dalam
kelas ini kaedah awam getSum,
yang mengembalikan jumlah hasil kaedah trait yang disambungkan.