Getters van eienskappe in OOP in PHP
Kom ons sê ons het die volgende klas met private eienskappe:
<?php
class User {
private $name;
private $surn;
public function __construct($name, $surn) {
$this->name = $name;
$this->surn = $surn;
}
}
?>
Soos jy kan sien, word hierdie eienskappe een keer ingestel wanneer die objek geskep word. Op die oomblik is dit eger onmoontlik om hierdie eienskappe te lees, aangesien hulle privaat is en daar geen toepaslike metodes vir dit is nie.
Kom ons maak spesiaale metodes vir ons eienskappe,
wat toelaat om hierdie eienskappe te lees.
Sulke metodes (hulle word getters genoem) gewoonlik
begin met die woord get, gevolg deur die
naam van die geleese eienskap.
Kom ons maak getters vir ons eienskappe:
<?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;
}
}
?>
Kom ons toets hul werking. Kom ons skep 'n objek, en stuur die gebruikersdata as parameter:
<?php
$user = new User('john', 'smit');
?>
Kom ons lees hierdie data deur die getters te gebruik:
<?php
var_dump($user->getName());
var_dump($user->getSurn());
?>
In die klas Employee, maak
drie private eienskappe: naam, salaris
en ouderdom.
Stuur die waardes van hierdie eienskappe as parameter van die konstruktor.
Maak getters wat die waardes van elk van ons eienskappe uitvoer.