PHP OOP တွင် အသုံးပြုခွင့် ပြင်ဆင်မှုများနှင့် traits များ

Traits များကိုအသုံးပြုခြင်းသည် ဆက်ခံခြင်းမဟုတ်ကြောင်း သင် သတိပြုရန် လိုအပ်ပါသည်။ ဆက်ခံခြင်းတွင် ကိုယ်ပိုင်နည်းလမ်းများနှင့် ဂုဏ်သတ္တိများကို ဆက်ခံခြင်းမရှိပါ။

Traits များတွင်မူ ဆန့်ကျင်ဘက်ဖြစ်သည်: trait ကိုအသုံးပြုသော class အတွင်း တွင် အများသုံးနည်းလမ်းများနှင့် ဂုဏ်သတ္တိများသာမက ကိုယ်ပိုင်နည်းလမ်းများနှင့် ဂုဏ်သတ္တိများလည်း ရရှိနိုင်ပါသည်။

ဥပမာဖြင့် ကြည့်ရအောင်။ ကျွန်ုပ်တို့တွင် ကိုယ်ပိုင်နည်းလမ်းပါသော trait အောက်ပါအတိုင်း ရှိသည်ဆိုပါစို့:

php<?php
  trait TestTrait
  {
    private function method()
    {
      return '!!!';
    }
  }
?>

ကျွန်ုပ်တို့၏ trait ကို class သို့ ချိတ်ဆက်ကြည့်ပါမည်:

php<?php
  class Test
  {
    use TestTrait;
  }
  
  new Test;
?>

Trait ၏ ကိုယ်ပိုင်နည်းလမ်းကို အသုံးပြုကြည့်ပါမည်:

php<?php
  class Test
  {
    use TestTrait; // trait ကို ချိတ်ဆက်ပါမည်
    
    public function __construct()
    {
      echo $this->method(); // '!!!' ကို ပြသပါမည်
    }
  }
  
  new Test;
?>