Getters van eigenschappen in OOP in PHP
Stel dat we de volgende klasse hebben met private eigenschappen:
<?php
class User {
private $name;
private $surn;
public function __construct($name, $surn) {
$this->name = $name;
$this->surn = $surn;
}
}
?>
Zoals je ziet, worden deze eigenschappen eenmalig ingesteld bij het aanmaken van het object. Momenteel is het echter onmogelijk om deze eigenschappen uit te lezen, omdat ze private zijn en er geen bijbehorende methoden voor bestaan.
Laten we voor onze eigenschappen speciale methoden
maken die het uitlezen van deze eigenschappen mogelijk
maken. Dergelijke methoden (ze worden getters genoemd)
beginnen meestal met het woord get, gevolgd door
de naam van de uit te lezen eigenschap.
Laten we getters voor onze eigenschappen maken:
<?php
class User {
private $name;
private $surn;
public function __construct($name, $surn) {
$this->name = $name;
$this->surn = $surn;
}
public function getName() {
return $this->name;
}
public function getSurn() {
return $this->surn;
}
}
?>
Laten we hun werking testen. Laten we een object aanmaken en de gebruikersgegevens als parameter doorgeven:
<?php
$user = new User('john', 'smit');
?>
Laten we deze gegevens uitlezen met behulp van de getters:
<?php
var_dump($user->getName());
var_dump($user->getSurn());
?>
Maak in de klasse Employee
drie private eigenschappen: naam, salaris
en leeftijd.
Geef de waarden van deze eigenschappen door als parameter van de constructor.
Maak getters die de waarden van elk van onze eigenschappen weergeven.