Privaat eienskappe in OOP in PHP
Voorwerpe se eienskappe wat van buite gelees en geskryf kan word, word publiek genoem. Daar bestaan ook privaat eienskappe, wat slegs binne die klas beskikbaar sal wees.
Privaat eienskappe se name moet
gedeclareer word met die toegangsmodifiseerder private.
Kom ons doen dit:
<?php
class User {
private $name;
}
?>
Laat ons nou data in ons eienskap skryf. Dit kan gedoen word, byvoorbeeld, in die konstruktor van die klas:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Kom ons maak nou 'n metode wat die waarde van ons eienskap sal teruggee:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Kom ons skep 'n voorwerp van die klas, en gee die gebruikersnaam as parameter:
<?php
$user = new User('john');
?>
'n Poging om direk na ons eienskap buite die klas te verwys, sal tot 'n fout lei:
<?php
echo $user->name; // fout
?>
Maar die roeping van ons metode sal toelaat om hierdie eienskap te lees:
<?php
echo $user->show(); // sal 'john' uitvoer
?>
In die klas Employee, maak
drie privaat eienskappe: naam, salaris
en ouderdom.
Gee die waardes van hierdie eienskappe as parameter aan die konstruktor.
Maak 'n metode wat die data van die werknemer sal vertoon.