⊗ppOpMgGNE 90 of 107 menu

Lettura di una proprietà inesistente in OOP in PHP

Nell'esempio fornito nella lezione precedente, abbiamo applicato la magia del metodo __get per intercettare l'accesso alle proprietà private. In realtà, questo metodo può essere utile anche per intercettare accessi a proprietà inesistenti.

Osserviamo un esempio pratico. Supponiamo di avere una classe User con nome e cognome, che sono proprietà pubbliche:

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

Facciamo in modo che l'oggetto della classe si comporti come se avesse anche una proprietà full, che restituisce il nome e il cognome dell'utente. Usiamo a questo scopo il nostro metodo magico __get:

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

Verifichiamo:

<?php $user = new User; $user->surn = 'john'; $user->name = 'smit'; echo $user->full; // restituirà 'john smit' ?>

Create una classe Date con le proprietà pubbliche year, month e day. Tramite la magia, create una proprietà weekDay, che restituirà il giorno della settimana corrispondente alla data.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta