Savybių geteriai OOP PHP
Tarkime, kad turime šią klasę su privačiomis savybėmis:
<?php
class User {
private $name;
private $surn;
public function __construct($name, $surn) {
$this->name = $name;
$this->surn = $surn;
}
}
?>
Kaip matote, šios savybės nustatomos vieną kartą kuriant objektą. Tačiau dabar šių savybių neįmanoma perskaityti, nes jos yra privatios ir nėra atitinkamų metodų tam.
Sukurkime savo savybėms specialius
metodus, leidžiančius perskaityti šias savybes.
Tokie metodai (jie vadinami geteriais) paprastai
prasideda žodžiu get, o po to seka
skaitomos savybės pavadinimas.
Sukurkime mūsų savybių geterius:
<?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;
}
}
?>
Patikrinkime jų veikimą. Sukurkime objektą, parametru perduodant vartotojo duomenis:
<?php
$user = new User('john', 'smit');
?>
Perskaitykime šiuos duomenis, pasinaudoję geteriais:
<?php
var_dump($user->getName());
var_dump($user->getSurn());
?>
Klasėje Employee sukurkite
tris privačias savybes: vardą, atlyginimą
ir amžių.
Konstruktoriui per parametrus perduokite šių savybių reikšmes.
Sukurkite geterius, kurie grąžina kiekvienos iš mūsų savybių reikšmes.