PHP OOP에서 함수로 속성 이름 접근하기

객체 속성의 이름도 함수에서 가져올 수 있습니다. 어떻게 하는지 살펴보겠습니다. 다음과 같은 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
  function getProp()
  {
    return 'name';
  }
?>

우리 함수가 반환하는 이름을 가진 객체의 속성에 접근해 보겠습니다:

php<?php
  echo $user->{getProp()}; // 'john'을 출력합니다
?>
Задание 1

다음 클래스가 주어졌습니다:

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

다음 함수들이 주어졌습니다:

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

Employee 클래스의 객체를 생성한 후, 함수 실행 결과를 통해 해당 속성에 접근해 보세요.