Eigenschapsnaam uit functie in OOP in PHP

De naam van een eigenschap van een object kan ook uit een functie worden gehaald. Laten we eens kijken hoe dat wordt gedaan. Stel dat we de volgende klasse User hebben:

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

Laten we een object van deze klasse aanmaken:

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

Stel dat we de volgende functie hebben:

php<?php
  function getProp()
  {
    return 'name';
  }
?>

Laten we verwijzen naar de eigenschap van het object, waarvan de naam wordt teruggegeven door onze functie:

php<?php
  echo $user->{getProp()}; // geeft 'john' weer
?>
Задание 1

Gegeven de volgende klasse:

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

Gegeven de volgende functies:

php<?php
  function getProp1()
  {
    return 'name';
  }
  function getProp2()
  {
    return 'salary';
  }
?>

Maak een object van de klasse Employee, en verwijs dan naar zijn eigenschappen via de resultaten van de functie-aanroepen.