Getters van eienskappe in OOP in PHP

Kom ons sê ons het die volgende klas met private eienskappe:

php<?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<?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<?php
  $user = new User('john', 'smit');
?>

Kom ons lees hierdie data deur die getters te gebruik:

php<?php
  var_dump($user->getName());
  var_dump($user->getSurn());
?>
Задание 1

In die klas Employee, maak drie private eienskappe: naam, salaris en ouderdom.

Задание 2

Stuur die waardes van hierdie eienskappe as parameter van die konstruktor.

Задание 3

Maak getters wat die waardes van elk van ons eienskappe uitvoer.