Eienskapnaam uit assosiatiewe skikking in OOP in PHP
Laat ons nou kyk hoe om na 'n objekeienskap te verwys volgens die naam
uit 'n element van 'n assosiatiewe skikking.
Gestel ons het die volgende klas User:
<?php
class User
{
public $name;
public $surn;
public function __construct($name, $surn)
{
$this->name = $name;
$this->surn = $surn;
}
}
?>
Skep 'n objek van hierdie klas:
<?php
$user = new User('john', 'smit');
?>
Gestel daar is 'n skikking van eienskappe:
<?php
$props = ['prop1' => 'name', 'prop2' => 'surn'];
?>
Verwys na die objekeienskap waarvan die naam in die element van ons skikking gestoor is:
<?php
echo $user->{$props['prop1']}; // sal 'john' uitdruk
?>
Die volgende klas word gegee:
<?php
class Employee
{
public $name;
public $salary;
public $position;
public function __construct($name, $salary, $position)
{
$this->name = $name;
$this->salary = $salary;
$this->position = $position;
}
}
?>
Die volgende skikking word gegee:
<?php
$arr = [
'prop1' => 'name',
'prop2' => 'salary',
'prop3' => 'position'
];
?>
Skep 'n objek van die klas Employee,
en verwys dan na sy eienskappe
deur die elemente van die skikking.