Приватне својства у ООП у PHP

Својства објекта која се могу читати и уписивати споља, називају се јавним (публичним). Постоје и приватна својства, која ће бити доступна само унутар класе.

Имена приватних својстава треба декларисати са модификатором приступа private. Хајде да то урадимо:

php<?php
  class User {
    private $name;
  }
?>

Сада ћемо уписати податке у наше својство. То се може урадити, на пример, у конструктору класе:

php<?php
  class User {
    private $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
  }
?>

Направимо сада метод, који ће враћати вредност нашег својства:

php<?php
  class User {
    private $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
    
    public function show() {
      return $this->name;
    }
  }
?>

Направимо објекат класе, прослеђујући као параметар име корисника:

php<?php
  $user = new User('john');
?>

Покушај директног приступа нашем својству ван класе довешће до грешке:

php<?php
  echo $user->name; // грешка
?>

Али позивање нашег метода ће омогућити читање тог својства:

php<?php
  echo $user->show(); // исписаће 'john'
?>
Задание 1

У класи Employee направите три приватна својства: име, плату и године.

Задание 2

Проследите параметром конструктора вредности ових својстава.

Задание 3

Направите метод који ће исписати податке о запосленом.