PHP OOP တွင် array မှ property name ကို အသုံးပြုခြင်း
ယခု object property ကို array element ထဲမှ name အလိုက်
ခေါ်ယူသုံးစွဲပုံကို ကြည့်ရအောင်။
ကျွန်ုပ်တို့မှာ အောက်ပါ class User ရှိသည်ဆိုပါစို့။
<?php
class User
{
public $name;
public $surn;
public function __construct($name, $surn)
{
$this->name = $name;
$this->surn = $surn;
}
}
?>
ဤ class ၏ object တစ်ခုကို ဖန်တီးကြမည်။
<?php
$user = new User('john', 'smit');
?>
Property များပါသော array တစ်ခုပေးထားသည်။
<?php
$props = ['name', 'surn'];
?>
ယခု array ၏ ပထမဆုံး element တွင်သိမ်းထားသော property ၏ တန်ဖိုးကို ထုတ်ပြရန် ကြိုးစားကြမည်။
<?php
echo $user->$props[0]; // ဤနည်းဖြင့် အလုပ်လုပ်မည် မဟုတ်ပါ
?>
ထိုကဲ့သို့သော ရှုပ်ထွေးသော property name ကို အသုံးပြုနိုင်ရန် အတွက် ၎င်းကို ကွင်းကောက်များအတွင်း ထည့်သွင်းရမည်။ ဤကဲ့သို့ဖြစ်သည်။
<?php
echo $user->{$props[0]}; // 'john' ကို ထုတ်ပြမည်
?>
အောက်ပါ class ကို ပေးထားသည်။
<?php
class Employee
{
public $name;
public $salary;
public $position;
public function __construct($name, $salary, $position)
{
$this->name = $name;
$this->salary = $salary;
$this->position = $position;
}
}
?>
Array တစ်ခုကို ပေးထားသည်။
<?php
$arr = ['name', 'salary', 'position'];
?>
Class Employee ၏ object တစ်ခုကို ဖန်တီးပါ၊
ပြီးနောက် ၎င်း၏ properties များကို
array elements များမှတစ်ဆင့် ခေါ်ယူသုံးစွဲပါ။