অন্য অবজেক্টের প্রোপার্টি নাম ব্যবহার করে PHP-র OOP-তে অ্যাক্সেস
প্রোপার্টির নাম এমনকি অন্য অবজেক্টের একটি প্রোপার্টিও হতে পারে। ধরুন আমাদের কাছে নিম্নলিখিত User ক্লাসটি আছে:
<?php
class User
{
public $name;
public $surn;
public function __construct($name, $surn)
{
$this->name = $name;
$this->surn = $surn;
}
}
?>
এই ক্লাসের একটি অবজেক্ট তৈরি করা যাক:
<?php
$user = new User('john', 'smit');
?>
ধরুন আমাদের কাছে Prop নামেও একটি ক্লাস আছে, যেটির value প্রোপার্টিটি প্রোপার্টির নাম সংরক্ষণ করবে:
<?php
class Prop
{
public $value;
public function __construct($value)
{
$this->value = $value;
}
}
?>
এই ক্লাসের একটি অবজেক্ট তৈরি করা যাক:
<?php
$prop = new Prop('name');
?>
এখন এই অবজেক্টটি ব্যবহার করে ব্যবহারকারীর নাম আউটপুট করা যাক:
<?php
echo $user->{$prop->value}; // আউটপুট দেবে 'john'
?>
নিম্নলিখিত ক্লাসটি দেওয়া আছে:
<?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
class Data
{
public $prop1 = 'name';
public $prop2 = 'salary';
public $prop3 = 'position';
}
?>
Employee অবজেক্টের প্রোপার্টিগুলো Data অবজেক্টের মাধ্যমে আউটপুট করুন।