php – 使用特徵 trait 定義屬性
直接在 trait 裡面定義即可,寫法如同 class 一樣。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php trait Bag { //定義特徵的屬性 public $color = 'red'; public $size = 'small'; } class Cart { use Bag; } $Cart = new Cart; echo $Cart->color; // red echo $Cart->size; // small |
但如果 class 中也定義了 trait 已有的屬性,且屬性質相異,那就會發生錯誤。
1 2 3 4 5 6 7 8 9 10 11 12 |
trait Bag { public $color = 'red'; public $size = 'small'; } class Cart { use Bag; public $color = 'green'; // 相同不會錯誤 public $color = 'large'; // 相異發生錯誤 } |