Номи хосият аз функсия дар ООП дар 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
function getProp()
{
return 'name';
}
?>
Ба хосияти объект муроҷиат мекунем, номе ки функсияи мо бармегардонад:
<?php
echo $user->{getProp()}; // '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
function getProp1()
{
return 'name';
}
function getProp2()
{
return 'salary';
}
?>
Объекте аз синфи Employee созед,
ва сипас ба хосиятҳои он
тавассути натиҷаҳои иҷрои функсияҳо муроҷиат кунед.