Objekte innerhalb von Klassen in OOP in PHP
In Klassen können Objekte anderer Klassen verwendet werden. Schauen wir uns ein Beispiel an. Angenommen, wir möchten einen Benutzer mit Vor- und Nachname sowie der Stadt, in der er lebt, erstellen. Nehmen wir an, wir haben die folgende Klasse für die Stadt:
<?php
class City {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Wir werden Vorname, Nachname und Stadt als Parameter an den Konstruktor übergeben:
<?php
class User {
public $name;
public $surn;
public $city;
public function __construct($name, $surn, $city) {
$this->name = $name;
$this->surn = $surn;
$this->city = $city;
}
}
?>
Dabei werden Vorname und Nachname Zeichenketten sein, aber die Stadt - ein Objekt einer eigenen separaten Klasse:
<?php
$city = new City('luis');
$user = new User('john', 'smit', $city);
?>
Lassen Sie uns den Namen unseres Benutzers ausgeben:
<?php
echo $user->name;
?>
Und jetzt geben wir den Namen der Stadt für unseren Benutzer aus:
<?php
echo $user->city->name;
?>
Gegeben ist die folgende Klasse:
<?php
class Employee {
public $name;
public $position;
public $department;
public function __construct($name, $position, $department) {
$this->name = $name;
$this->position = $position;
$this->department = $department;
}
}
?>
Sorgen Sie dafür, dass an den zweiten und dritten Parameter Objekte separater Klassen übergeben werden.
Erstellen Sie ein Objekt eines Mitarbeiters mit Hilfe der Klasse aus der vorherigen Aufgabe.
Geben Sie in der Konsole den Namen, die Position und die Abteilung des erstellten Mitarbeiters aus.