348 of 410 menu

Metodas __get

Metodas __get automatiškai iškviečiamas bandant gauti neegzistuojančios arba neprieinamos objekto savybės reikšmę. Šis magiškas metodas priima vieną parametrą - prašomos savybės pavadinimą.

Sintaksė

public function __get(string $name) { // realizacija }

Pavyzdys

Sukurkime klasę su metodu __get, kuris grąžins reikšmes neegzistuojančioms savybėms:

<?php class User { private $data = [ 'name' => 'John', 'age' => 30 ]; public function __get($name) { if (array_key_exists($name, $this->data)) { return $this->data[$name]; } return null; } } $user = new User(); echo $user->name; ?>

Kodo vykdymo rezultatas:

'John'

Pavyzdys

Metodas __get gali būti naudojamas dinaminėms savybėms implementuoti:

<?php class DynamicProperties { public function __get($name) { return "Dinaminė reikšmė {$name} savybei"; } } $obj = new DynamicProperties(); echo $obj->test; ?>

Kodo vykdymo rezultatas:

'Dinaminė reikšmė test savybei'

Taip pat žiūrėkite

  • metodas __set,
    kuris iškviečiamas nustatant neegzistuojančią savybę
  • metodas __call,
    kuris iškviečiamas iškviečiant neegzistuojantį metodą
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti