- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- AMD Ryzen 9 / 7 / 5 / 3 3***(X) "Zen 2" (AM4)
- OLED monitor topik
- Nagyon érzékeny lett a játékok archiválására a Nintendo
- Androidos tablet topic
- Raspberry Pi
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- 3D nyomtatás
- Milyen egeret válasszak?
- Házimozi belépő szinten
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Speeedfire #6394 üzenetére
"van-e az adott néven ilyen függvény, ha van akkor meghívja ha nincs akkor elkészíti"
Nem készít el semmilyen függvényt.
Függvényt legfeljebb meghív. [call_user_func()]"Nem lenne célszerűbb már a __get() résznél megvizsgálni a dolgokat? dátum, név stb? Mert így feleslegesen dolgozik utána még a __set() is."
Másra való a kettő! A getter függvényekkel lekérdezel bizonyos attribútumokat, változóértékeket, a setter függvényekkel pedig beállítod azok értékét.Ha be akarnám állítani vagy épp le akarnám kérdezni a "pityipalko" változó értékét, akkor arra nyilván kivételt dobna, mert nincs ilyen (ha beállítottad volna a konstruktorban, akkor lenne ilyen! példa:
$this->_tulajdonsagok['pityipalko'] = null;).
De a $_tulajdonsagok tömbben létezik 'nev' és 'szuletesidatum' index is, így azokhoz tartozik egy érték, azok beállíthatók, lekérdezhetők.Amikor ezt írod:
$obj->szuletesidatum = '1985-08-27';
Akkor tulajdonképpen a "mágikus" __set függvény hívódik meg, a __set $tulajdonsagnev paramétere megkapja a 'szuletesidatum' sztringet, az $ertek pedig az '1985-08-27' értéket.Ezután az array_key_exists() függvénnyel megvizsgáljuk, hogy a $_tulajdonsagok tömbben beállítottunk-e egyáltalán 'szuletesidatum' index-szel bármit (ami a konstruktorban egyébként null értéket kapott [lásd $this->_tulajdonsagok['szuletesidatum'] = null;], de ezzel már létrejött ezen az indexen egy érték), ha nem, kivétel, ha igen, megyünk tovább.
Ezután megvizsgálja, létezik-e az osztály adott példányában ($this) $tulajdonsagnev . 'Beallitas' nevű függvény - tehát esetünkben szuletesidatumBeallitas nevű függvény (mivel konkatenálja a $tulajdonsagnev változó értékét a 'Beallitas' sztringgel, majd megvizsgálja, van-e ilyen metódus ( method_exists() függvény).
Ha létezik ilyen metódus, akkor meghívja azt, különben pedig csak simán beállítja a $tulajdonsagnev nevű indexen található értéket a $_tulajdonsagok tömbből.Remélem valamennyire érthetően mondtam el.
Új hozzászólás Aktív témák
- Gumi és felni topik
- Búvárkodás
- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- AMD Ryzen 9 / 7 / 5 / 3 3***(X) "Zen 2" (AM4)
- OLED monitor topik
- Szoszo94: Xiaomi Mi Router 3G - Padavanra fel!
- Interactive Brokers társalgó
- Nagyon érzékeny lett a játékok archiválására a Nintendo
- AliExpress tapasztalatok
- Kerékpárosok, bringások ide!
- További aktív témák...
- Thin 15 B12VE 15.6" FHD IPS i5-12450H RTX 4050 16GB 512GB NVMe magyar vbill gar
- Apple iPhone 12 Mini 64Gb, Szép Állapotban, Akku:91% 12 hónap Garancia, Fekete Színben
- Apple iPhone 13 Mini 128Gb, Újszerű Állapotban, Akku:100%, 12 hónap Garancia, Fekete Színben
- Apple iPhone 13 Pro 256Gb, Újszerű állapotban, Akku:90%, 12 hónap Garancia, Kék Színben
- Apple iPhone 15 128Gb, Akku:90%, 24 hónap Garancia, Fekete Színben, Kártyafüggetlen
- Xiaomi 11 Lite 5G NE 256GB Kártyafüggetlen 1Év Garanciával
- HP Series 3 Pro FHD monitor Professzionális képminőség otthonra vagy irodába!
- Telefon Felvásárlás!! iPhone 14/iPhone 14 Plus/iPhone 14 Pro/iPhone 14 Pro Max
- ÁRGARANCIA!Épített KomPhone Ryzen 5 5600X 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Xiaomi Redmi Note 14 Pro 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest