Όνομα ιδιότητας από μεταβλητή στην αντικειμενοστραφή προγραμματισμό στην PHP

Στις ιδιότητες των αντικειμένων μπορούμε να απευθυνθούμε με όνομα από μεταβλητή. Ας δούμε πώς μπορεί να γίνει αυτό. Ας υποθέσουμε ότι έχουμε την ακόλουθη κλάση 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');
?>

Ας εμφανίσουμε την τιμή της ιδιότητάς του:

php<?php
  echo $user->name; // θα εμφανίσει 'john'
?>

Ας υποθέσουμε ότι έχουμε μια μεταβλητή, που αποθηκεύει το όνομα της ιδιότητας:

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

Ας χρησιμοποιήσουμε τώρα την τιμή της μεταβλητής ως όνομα ιδιότητας:

php<?php
  $prop = 'name';
  echo $user->$prop; // θα εμφανίσει 'john'
?>
Задание 1

Δίνεται η ακόλουθη κλάση:

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

Δίνονται οι ακόλουθες μεταβλητές:

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

Δημιουργήστε ένα αντικείμενο της κλάσης Employee, και στη συνέχεια απευθυνθείτε στις ιδιότητές του μέσω των δεδομένων μεταβλητών.