Trong phiên bản 5.4, đặc điểm của phiên bản PHP được đưa vào lập trình hướng đối tượng PHP. Một đặc điểm giống như lớp tuy nhiên nó chỉ dành cho nhóm các phương thức một cách chi tiết và đáng tin cậy. Nó không được phép tạo ra một đặc điểm của riêng nó. Các đặc điểm được đưa vào PHP 5.4 để khắc phục các vấn đề của thừa kế đơn. Như chúng ta biết trong lớp kế thừa đơn chỉ có thể kế thừa từ một lớp đơn lẻ khác. Trong trường hợp của đặc điểm, nó cho phép nhà phát triển sử dụng lại các bộ phương thức một cách tự do trong một số lớp độc lập sống trong các cấu trúc phân cấp lớp khác nhau.
Ví dụ
<?php trait Reader{ public function add($var1,$var2){ return $var1+$var2; } } trait writer { public function multiplication($var1,$var2){ return $var1*$var2; } } class File { use Reader; use writer; public function calculate($var1,$var2){ echo "Ressult of addition:".$this->add($var1,$var2) ."\n"; echo "Ressult of multiplication:".$this->multiplication($var1,$var2); } } $o = new File(); $o->calculate(5,3); ?>
Đầu ra
Result of addition two numbers:8 Result of multiplication of two numbers:15
Giải thích
Trong ví dụ trên, chúng ta đã triển khai một hàm từ hai đặc điểm trong một lớp duy nhất. Do đặc điểm, chúng tôi có thể truy cập nhiều chức năng trong một lớp duy nhất.
Lưu ý
Chúng tôi đang sử dụng từ khóa "USE" để truy cập các đặc điểm bên trong một lớp.