Devdit
 

trait PHP คืออะไร มีประโยชน์อย่างไร

2.3K

trait PHP คือการสร้างชุดคำสั่งที่ให้ทำ method หรือ function ภายในโค้ดสามารถถูกเรียกใช้งานจาก class อื่นได้พร้อมกันมากกว่า 1 class เพื่อแก้ปัญหาเรื่องการสืบทอดคุณสมบัติแบบ single parent สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง trait PHP คืออะไร มีประโยชน์อย่างไร

<?php
    trait Hello1 {
        public function hi() {
            return "Hello Devdit";
        }
        public function sayHi() {
            return "Say hi Devdit";
        }        
    }

    trait Hello2 {
        public function welcome() {
            return "Welcome Devdit";
        }
    }    

    class Demo {
        use Hello1, Hello2;
    }

    $objDemo = new Demo();
    echo $objDemo->hi();
    echo "<br/>";
    echo $objDemo->sayHi();
    echo "<br/>";    
    echo $objDemo->welcome();
?>

ผลลัพธ์

Hello Devdit
Say hi Devdit
Welcome Devdit

คำอธิบาย

trait PHP เวลาสร้างจะใช้ keyword trait วางไว้หน้าชื่อ เช่น trait Hello1, trait Hello2 โดยภายใน trait สามารถเขียน method หรือ function ที่ต้องการลงไปได้เลย ส่วนเวลาเรียกใช้งาน trait ที่ต้องการจะใช้คำสั่ง use ภายใน class ที่ต้องการสืบทอด เช่น class Demo มี use Hello1, Hello2 ทำให้ class Demo สามารถเรียกใช้ method หรือ function ภายใน trait Hello1 และ Hello2 พร้อมกันได้เลย เป็นการแก้ปัญหาการสืบทอดแบบ single parent ของภาษา PHP

เขียน 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ