Prywatne właściwości w OOP w PHP
Właściwości obiektu, które można odczytywać i zapisywać z zewnątrz, nazywane są publicznymi. Istnieją również prywatne właściwości, które będą dostępne tylko wewnątrz klasy.
Nazwy prywatnych właściwości należy
deklarować z modyfikatorem dostępu private.
Zróbmy to:
<?php
class User {
private $name;
}
?>
Teraz zapiszmy dane w naszej właściwości. Można to zrobić na przykład w konstruktorze klasy:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Stwórzmy teraz metodę, która będzie zwracać wartość naszej właściwości:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Stwórzmy obiekt klasy, przekazując parametrem imię użytkownika:
<?php
$user = new User('john');
?>
Próba bezpośredniego odwołania się do naszej właściwości poza klasą spowoduje błąd:
<?php
echo $user->name; // błąd
?>
A wywołanie naszej metody pozwoli odczytać tę właściwość:
<?php
echo $user->show(); // wypisze 'john'
?>
W klasie Employee zrób
trzy prywatne właściwości: imię, wynagrodzenie
i wiek.
Przekaż parametrem konstruktora wartości tych właściwości.
Zrób metodę, która wypisze dane pracownika.