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
  $props = ['name', 'surn'];
?>

अब प्रॉपर्टी का वैल्यू आउटपुट करने का प्रयास करते हैं, जो ऐरे के ज़ीरो एलिमेंट में स्टोर है:

php<?php
  echo $user->$props[0]; // यह काम नहीं करेगा
?>

ऐसे कॉम्प्लेक्स प्रॉपर्टी नाम को काम कराने के लिए, इसे करली ब्रेसिज़ में लपेटना होगा, इस तरह:

php<?php
  echo $user->{$props[0]}; // '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
  $arr = ['name', 'salary', 'position'];
?>

क्लास Employee का एक ऑब्जेक्ट बनाएं, और फिर इसकी प्रॉपर्टीज़ को ऐरे के एलिमेंट्स के through एक्सेस करें।