Egenskapsnamn från variabel i OOP i PHP

Man kan komma åt objektegenskaper via namn från en variabel. Låt oss se hur detta kan göras. Låt oss säga att vi har följande klass User:

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

Låt oss skapa ett objekt av denna klass:

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

Låt oss skriva ut värdet på dess egenskap:

php<?php
  echo $user->name; // skriver ut 'john'
?>

Låt oss säga att vi har en variabel som innehåller egenskapens namn:

php<?php
  $prop = 'name';
?>

Låt oss nu använda variabelns värde som egenskapsnamn:

php<?php
  $prop = 'name';
  echo $user->$prop; // skriver ut 'john'
?>
Задание 1

Följande klass är given:

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

Följande variabler är givna:

php<?php
  $prop1 = 'name';
  $prop2 = 'salary';
?>

Skapa ett objekt av klassen Employee, och åtkomst sedan till dess egenskaper via de givna variablerna.