⊗ppOpMgGNE 90 of 107 menu

Branje neobstoječe lastnosti v OOP v PHP

V primeru, predstavljenem v prejšnji lekciji, smo uporabili magično metodo __get za prestrezanje dostopa do zasebnih lastnosti. Pravzaprav lahko ta metoda prav tako pride prav za prestrezanje dostopov do neobstoječih lastnosti.

Poglejmo si praktični primer. Naj imamo razred User z imenom in priimkom, ki sta javni lastnosti:

<?php class User { public $surn; public $name; } ?>

Naredimo tako, da se bo objekt razreda obnašal, kot da ima tudi lastnost full, ki izpiše ime in priimek uporabnika. Za to uporabimo našo magično metodo __get:

<?php class User { public $surname; public $name; public $patronymic; public function __get($property) { if ($property == 'full') { return $this->surn . ' ' . $this->name; } } } ?>

Preverimo:

<?php $user = new User; $user->surn = 'john'; $user->name = 'smit'; echo $user->full; // izpiše 'john smit' ?>

Naredite razred Date z javnimi lastnostmi year, month in day. Z magijo naredite lastnost weekDay, ki bo vrnila dan v tednu, ki ustreza datu.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni