Jina la Sifa kutoka kwenye Safu katika OOP kwa PHP
Wacha sasa tuangalie jinsi ya kurejea
kwa sifa ya kitu kwa jina
kutoka kwa kipengele cha safu.
Acha tuwe na darasa lifuatalo User:
<?php
class User
{
public $name;
public $surn;
public function __construct($name, $surn)
{
$this->name = $name;
$this->surn = $surn;
}
}
?>
Tuweke kitu cha darasa hili:
<?php
$user = new User('john', 'smit');
?>
Acha tupewe safu ya sifa:
<?php
$props = ['name', 'surn'];
?>
Sasa tujaribu kuonyesha thamani ya sifa, ambayo imehifadhiwa kwenye kipengele cha sifuri cha safu:
<?php
echo $user->$props[0]; // haitafanya kazi hivi
?>
Ili jina changamano la sifa kama hili lifanye kazi, linahitaji kuzingirwa kwa mabano ya kuni, kama ifuatavyo:
<?php
echo $user->{$props[0]}; // itaonyesha 'john'
?>
Imepatiwa darasa lifuatalo:
<?php
class Employee
{
public $name;
public $salary;
public $position;
public function __construct($name, $salary, $position)
{
$this->name = $name;
$this->salary = $salary;
$this->position = $position;
}
}
?>
Imepatiwa safu:
<?php
$arr = ['name', 'salary', 'position'];
?>
Unda kitu cha darasa Employee,
kisha urejee kwenye sifa zake
kupitia viperengele vya safu.