Αντικείμενα μέσα σε κλάσεις στην OOP σε PHP
Σε κλάσεις μπορούμε να χρησιμοποιούμε αντικείμενα από άλλες κλάσεις. Ας δούμε ένα παράδειγμα. Ας υποθέσουμε ότι θέλουμε να δημιουργήσουμε έναν χρήστη με όνομα και επώνυμο, καθώς και μια πόλη στην οποία ζει. Ας υποθέσουμε ότι έχουμε την ακόλουθη κλάση για την πόλη:
<?php
class City {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Θα περάσουμε το όνομα, το επώνυμο και την πόλη ως παραμέτρους του κατασκευαστή:
<?php
class User {
public $name;
public $surn;
public $city;
public function __construct($name, $surn, $city) {
$this->name = $name;
$this->surn = $surn;
$this->city = $city;
}
}
?>
Σε αυτήν την περίπτωση, το όνομα και το επώνυμο θα είναι συμβολοσειρές, αλλά η πόλη - ένα αντικείμενο της δικής της ξεχωριστής κλάσης:
<?php
$city = new City('luis');
$user = new User('john', 'smit', $city);
?>
Ας εμφανίσουμε το όνομα του χρήστη μας:
<?php
echo $user->name;
?>
Και τώρα ας εμφανίσουμε το όνομα της πόλης για τον χρήστη μας:
<?php
echo $user->city->name;
?>
Δίνεται η ακόλουθη κλάση:
<?php
class Employee {
public $name;
public $position;
public $department;
public function __construct($name, $position, $department) {
$this->name = $name;
$this->position = $position;
$this->department = $department;
}
}
?>
Κάντε έτσι ώστε στη δεύτερη και τρίτη παράμετρο να περνιούνται αντικείμενα ξεχωριστών κλάσεων.
Δημιουργήστε ένα αντικείμενο εργαζομένου χρησιμοποιώντας την κλάση από την προηγούμενη άσκηση.
Εμφανίστε στην κονσόλα το όνομα, τη θέση εργασίας και το τμήμα για τον δημιουργημένο εργαζόμενο.