Eienskapsnaam uit array in OOP in PHP

Kom ons kyk nou hoe om na 'n objek se eienskap te verwys volgens naam uit 'n array-element. Gestel ons het die volgende klas User:

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

Skep 'n objek van hierdie klas:

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

Gestel daar is 'n array van eienskappe:

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

Laat ons probeer om die waarde van die eienskap uit te voer wat in die nul-element van die array gestoor is:

php<?php
  echo $user->$props[0]; // sal so nie werk nie
?>

Om sodanige komplekse eienskapsnaam te laat werk, moet dit in krulhakies geplaas word, soos volg:

php<?php
  echo $user->{$props[0]}; // sal 'john' uitvoer
?>
Задание 1

Gegewe die volgende klas:

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

Gegewe 'n array:

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

Skep 'n objek van die klas Employee, en verwys dan na sy eienskappe deur die elemente van die array.