Гетъри на свойства в ООП в PHP
Да предположим, че имаме следния клас с частни свойства:
<?php
class User {
private $name;
private $surn;
public function __construct($name, $surn) {
$this->name = $name;
$this->surn = $surn;
}
}
?>
Както виждате, тези свойства се задават веднъж при създаване на обекта. В момента обаче тези свойства не могат да бъдат прочетени, тъй като са частни и няма съответни методи за това.
Нека създадем за нашите свойства специални
методи, които позволяват четенето на тези свойства.
Такива методи (наричани гетъри) обикновено
започват със думата get, следвана от
името на свойството, което се чете.
Нека създадем гетъри за нашите свойства:
<?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;
}
}
?>
Нека проверим тяхната работа. Ще създадем обект, като подадем данните на потребителя като параметри:
<?php
$user = new User('john', 'smit');
?>
Нека прочетем тези данни, използвайки гетърите:
<?php
var_dump($user->getName());
var_dump($user->getSurn());
?>
В класа Employee създайте
три частни свойства: име, заплата
и възраст.
Подайте чрез конструктора стойностите на тези свойства.
Създайте гетъри, които извеждат стойностите на всяко от нашите свойства.