⊗ppOpBsGSA 14 of 107 menu

A getterek és setterek előnyei az OOP-ban PHP-ben

Az előző leckében minden tulajdonsághoz készítettünk gettert és settert. Felmerülhet a kérdés, miért szükségesek ezek a bonyolultságok, hiszen gyakorlatilag ugyanazt az eredményt el lehetne érni, ha a tulajdonságokat nyilvánossá tennénk, nem pedig priváttá.

A dolog az, hogy a gettereknek és settereknek van előnyük: a tulajdonsághoz való hozzáférés előtt végezhetünk bizonyos ellenőrzéseket. Például a mi esetünkben a név és vezetéknév beállításakor ellenőrizhetjük, hogy az új érték nem üres sztring-e:

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

Ellenőrizzük, hogyan működik ez. Először hozzunk létre egy objektumot az osztályból:

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

Most próbáljunk meg helyes értéket beállítani:

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

És most próbáljunk meg helytelen értéket beállítani:

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

A Employee osztályban a kor setterében végezz ellenőrzést, hogy a kor 0 és 120 között legyen.

A Employee osztályban a fizetés getterében tedd meg, hogy a fizetés értékének olvasásakor annak végére egy dollárjel kerüljön.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás