PHP OOP တွင် array မှ property name ကို အသုံးပြုခြင်း

ယခု object property ကို array element ထဲမှ name အလိုက် ခေါ်ယူသုံးစွဲပုံကို ကြည့်ရအောင်။ ကျွန်ုပ်တို့မှာ အောက်ပါ class User ရှိသည်ဆိုပါစို့။

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

ဤ class ၏ object တစ်ခုကို ဖန်တီးကြမည်။

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

Property များပါသော array တစ်ခုပေးထားသည်။

php<?php
  $props = ['name', 'surn'];
?>

ယခု array ၏ ပထမဆုံး element တွင်သိမ်းထားသော property ၏ တန်ဖိုးကို ထုတ်ပြရန် ကြိုးစားကြမည်။

php<?php
  echo $user->$props[0]; // ဤနည်းဖြင့် အလုပ်လုပ်မည် မဟုတ်ပါ
?>

ထိုကဲ့သို့သော ရှုပ်ထွေးသော property name ကို အသုံးပြုနိုင်ရန် အတွက် ၎င်းကို ကွင်းကောက်များအတွင်း ထည့်သွင်းရမည်။ ဤကဲ့သို့ဖြစ်သည်။

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

အောက်ပါ class ကို ပေးထားသည်။

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;
    }
  }
?>

Array တစ်ခုကို ပေးထားသည်။

php<?php
  $arr = ['name', 'salary', 'position'];
?>

Class Employee ၏ object တစ်ခုကို ဖန်တီးပါ၊ ပြီးနောက် ၎င်း၏ properties များကို array elements များမှတစ်ဆင့် ခေါ်ယူသုံးစွဲပါ။