⊗ppOpBsGSA 14 of 107 menu

Предности сеттера и гетера у ООП у PHP-у

У претходној лекцији смо направили за свако својство гетер и сетер. Може се поставити питање, чему служе такве компликације, јер у суштини истог ефекта можемо постићи ако својства учинимо јавним, а не приватним.

Ствар је у томе што гетери и сетери имају предност: пре приступа својству можемо извршити неке провере. На пример, у нашем случају при упису имена и презимена можемо проверити, да нова вредност није празан стринг:

<?php class User { private $name; private $surn; public function setName($name) { if (strlen($name) > 0) { $this->name = $name; } else { echo 'name is incorrect'; } } public function setSurn($surn) { if (strlen($surn) > 0) { $this->surn = $surn; } else { echo 'surn is incorrect'; } } public function getName() { return $this->name; } public function getSurn() { return $this->surn; } } ?>

Хајде да проверимо како то ради. Прво ћемо креирати објекат класе:

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

Сада ћемо покушати да уписемо исправну вредност:

<?php $user->setName('john'); ?>

А сада ћемо покушати да уписемо неисправну:

<?php $user->setName(''); // грешка ?>

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

У класи Employee у гетеру плате направите тако да при читању плате на крај њене вредности буде додат знак долара.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј