PHP OOP တွင် အခြားအရာဝတ္ထုတစ်ခုမှ ဂုဏ်သတ္တိအမည်

ဂုဏ်သတ္တိအမည်သည် အခြားအရာဝတ္ထုတစ်ခု၏ ဂုဏ်သတ္တိပင်ဖြစ်နိုင်သည်။ ကျွန်ုပ်တို့တွင် အောက်ပါအတန်း User ရှိသည်ဆိုပါစို့:

php<?php
  class User
  {
    public $name;
    public $surn;
    
    public function __construct($name, $surn)
    {
      $this->name = $name;
      $this->surn = $surn;
    }
  }
?>

ဤအတန်း၏ အရာဝတ္ထုတစ်ခုကို ဖန်တီးကြပါစို့:

php<?php
  $user = new User('john', 'smit');
?>

ထို့အပြင် ကျွန်ုပ်တို့တွင် အတန်း Prop ရှိပါစေ၊ ၎င်းသည် ၎င်း၏ ဂုဏ်သတ္တိ value ထဲတွင် ဂုဏ်သတ္တိအမည်ကို ပါဝင်စေမည်:

php<?php
  class Prop
  {
    public $value;
    
    public function __construct($value)
    {
      $this->value = $value;
    }
  }
?>

ဤအတန်း၏ အရာဝတ္ထုတစ်ခုကို ဖန်တီးကြပါစို့:

php<?php
  $prop = new Prop('name'); 
?>

ယခု ဤအရာဝတ္ထုကို အသုံးပြု၍ အသုံးပြုသူအမည်ကို ထုတ်ပြကြပါစို့:

php<?php
  echo $user->{$prop->value}; // 'john' ကိုထုတ်ပြမည်
?>
Задание 1

အောက်ပါအတန်းကို ပေးထားသည်:

php<?php
  class Employee
  {
    public $name;
    public $salary;
    public $position;
    
    public function __construct($name, $salary, $position)
    {
      $this->name = $name;
      $this->salary = $salary;
      $this->position = $position;
    }
  }
?>

ထို့အပြင် ဤကဲ့သို့သော အတန်းကိုလည်း ပေးထားသည်:

php<?php
  class Data
  {
    public $prop1 = 'name';
    public $prop2 = 'salary';
    public $prop3 = 'position';
  }
?>

Data အရာဝတ္ထုမှတစ်ဆင့် Employee အရာဝတ္ထု၏ ဂုဏ်သတ္တိများကို ထုတ်ပြပါ။