Номи хосиятаз аз массив дар ООП дар PHP
Биёед акнун бубинем, ки чӣ тавр ба хосияти объект бо ном
аз унсури массив муроҷиат кунем.
Бигзор мо синфи зеринро дошта бошем 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');
?>
Бигзор массиви хосиятҳо дода шавад:
<?php
$props = ['name', 'surn'];
?>
Акнун бикӯшем, ки қимати хосиятро, ки дар унсури сифрии массив нигоҳ дошта мешавад, чоп кунем:
<?php
echo $user->$props[0]; // ин тавр кор нахоҳад кард
?>
Барои он ки чунин номи мураккаби хосият кор кунад, онро бояд дар қафаси каҷӣ гирифт, ба ин тавр:
<?php
echo $user->{$props[0]}; // '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
$arr = ['name', 'salary', 'position'];
?>
Объекти синфи Employee-ро эҷод кунед,
ва сипас ба хосиятҳои он
тавассути унсурҳои массив муроҷиат намоед.