⊗ppOpBsGSA 14 of 107 menu

Prednosti setera i getera u OOP-u u PHP

U prethodnoj lekciji smo napravili za svako svojstvo geter i seter. Može se postaviti pitanje, čemu su potrebne takve složenosti, jer se zapravo istog efekta može postići ako se svojstva učine javnim, a ne privatnim.

Stvar je u tome što geteri i seteri imaju prednost: pre pristupa svojstvu može se izvršiti neka provera. Na primer, u našem slučaju pri upisu imena i prezimena možemo proveriti, da nova vrednost nije prazan string:

<?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; } } ?>

Hajde da proverimo kako ovo radi. Za početak, kreirajmo objekat klase:

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

Sada pokušajmo da upišemo ispravnu vrednost:

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

A sada pokušajmo da upišemo neispravnu:

<?php $user->setName(''); // greška ?>

U klasi Employee u seteru za godine napravite proveru da godine moraju biti od 0 do 120.

U klasi Employee u geteru za platu uradite tako da pri čitanju plate na kraj njene vrednosti bude dodatan znak dolara.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij