Objektid klassides OOP-s PHP-s
Klassides saab kasutada teiste klasside objekte. Vaatame seda näite varal. Oletame, et tahame teha kasutaja nime ja perekonnanimega ning linna, kus ta elab. Oletame, et meil on järgmine klass linnale:
<?php
class City {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Edastame nime, perekonnanime ja linna konstruktori parameetritena:
<?php
class User {
public $name;
public $surn;
public $city;
public function __construct($name, $surn, $city) {
$this->name = $name;
$this->surn = $surn;
$this->city = $city;
}
}
?>
Sel juhul on nimi ja perekonnanimi stringid, kuid linn on objekti oma eraldi klassist:
<?php
$city = new City('luis');
$user = new User('john', 'smit', $city);
?>
Väljastame oma kasutaja nime:
<?php
echo $user->name;
?>
Nüüd väljastame oma kasutaja linna nime:
<?php
echo $user->city->name;
?>
Antud on järgmine klass:
<?php
class Employee {
public $name;
public $position;
public $department;
public function __construct($name, $position, $department) {
$this->name = $name;
$this->position = $position;
$this->department = $department;
}
}
?>
Tehke nii, et teise ja kolmanda parameetrina edastataks eraldi klasside objektid.
Looge töötaja objekt eelmise ülesande klassi abil.
Väljastage konsooli loodud töötaja nimi, ametikoht ja osakond.