Eigenschaftsname aus Variable in OOP in PHP
Auf Eigenschaften von Objekten kann
über einen Namen aus einer Variable zugegriffen werden.
Schauen wir uns an,
wie das gemacht werden kann. Nehmen wir an, wir haben die folgende
Klasse User:
<?php
class User
{
public $name;
public $surn;
public function __construct($name, $surn)
{
$this->name = $name;
$this->surn = $surn;
}
}
?>
Erstellen wir ein Objekt dieser Klasse:
<?php
$user = new User('john', 'smit');
?>
Geben wir den Wert seiner Eigenschaft aus:
<?php
echo $user->name; // gibt 'john' aus
?>
Nehmen wir an, wir haben eine Variable, die den Eigenschaftsnamen speichert:
<?php
$prop = 'name';
?>
Verwenden wir nun den Wert der Variable als Namen der Eigenschaft:
<?php
$prop = 'name';
echo $user->$prop; // gibt 'john' aus
?>
Gegeben ist die folgende Klasse:
<?php
class Employee
{
public $name;
public $salary;
public function __construct($name, $salary)
{
$this->name = $name;
$this->salary = $salary;
}
}
?>
Gegeben sind die folgenden Variablen:
<?php
$prop1 = 'name';
$prop2 = 'salary';
?>
Erstellen Sie ein Objekt der Klasse Employee,
und greifen Sie dann auf seine Eigenschaften
über die angegebenen Variablen zu.