- Projektor topic
- Bemutatkozott a HHKB legújabb, Topre kapcsolókkal szerelt billentyűzete
- Milyen billentyűzetet vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- AMD Navi Radeon™ RX 9xxx sorozat
- Azonnali informatikai kérdések órája
- Mini-ITX
- Melyik tápegységet vegyem?
- Azonnali VGA-s kérdések órája
- OLED TV topic
Új hozzászólás Aktív témák
-
Speeedfire
félisten
válasz
Tele von Zsinór
#6393
üzenetére
Igen azt én is észrevettem, hogy developer verzió, csak a hivatalos oldalon egy szó sem esik erről. Ha valóban készül akkor lehet tudni, hogy mik lesznek az újítások?
Most akkor lehet megint félreértettem valamit. Ha jól értettem akkor a függvény a __get() részben megnézni, hogy van-e az adott néven ilyen függvény, ha van akkor meghívja ha nincs akkor elkészíti ellekező esetben kivételt dob nekem.
class TulajdonsagObjektum {
private $_tulajdonsagok;
public function __construct() {
$this->_tulajdonsagok = array();
$this->_tulajdonsagok['nev'] = null;
$this->_tulajdonsagok['szuletesidatum'] = null;
}
function __get($tulajdonsagnev) {
if(!array_key_exists($tulajdonsagnev, $this->_tulajdonsagok)) {
throw new Exception('Ervenytelen tulajdonsag-érték!');
}
if(method_exists($this, $tulajdonsagnev. 'Lekerdezes')) {
return call_user_func(array($this, $tulajdonsagnev . 'Lekerdezes'));
}
else {
return $this->_tulajdonsagok[$tulajdonsagnev];
}
}
function __set($tulajdonsagnev, $ertek) {
if(!array_key_exists($tulajdonsagnev, $this->_tulajdonsagok)) {
throw new Exception('Ervenytelen tulajdonsag-ertek');
}
if(method_exists($this, $tulajdonsagnev . 'Beallitas')) {
return call_user_func(array($this, $tulajdonsagnev . 'Beallitas'), $ertek);
}
else {
$this-> _tulajdonsagok[$tulajdonsagnev] = $ertek;
}
}
function szuletesidatumBeallitas($szd) {
if(strtotime($szd) == false) {
throw new Exception('A szuletesi datumnak egy ervenyes naptari napnak kell lennie!');
}
else {
$this->_tulajdonsagok['szuletesidatum'] = $szd;
}
}
function koszontes() {
echo 'Szia! '.$this->nev.' vagyok! '.$this->szuletesidatum.' -an/en szulettem!<br/>';
}
}
try {
$obj = new TulajdonsagObjektum();
$obj->nev = "Szabi";
$obj->szuletesidatum = '1985-08-27';
$obj->koszontes();
}
catch (Exception $e) {
echo 'Hiba: ', $e->getMessage(), "\n";
}Ugye itt a __get() második if ágában van a vizsgálata ennek. Vagy te arra az egy db szuletesidatumBeallitasra gondoltál? Mert abban az esetben valóban van ilyen de a többi esetben nincs ilyen típusú függvény.
Viszont most megint felmerült egy kérdés a fejemben? 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. Akkor már a kivételkezelés az elején végbe menne.
Új hozzászólás Aktív témák
- Projektor topic
- Honor Magic6 Pro - kör közepén számok
- Vége egy korszaknak: PlayStatonre is jön a Halo: Campaign Evolved
- Bemutatkozott a HHKB legújabb, Topre kapcsolókkal szerelt billentyűzete
- GTA V
- Xiaomi Smart Band 8 - folyamatosan
- Battlefield 6 teszt
- Milyen billentyűzetet vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- További aktív témák...
- Asus TUF Gaming A15 GAMER LAPTOP 15.6" FHD IPS 144Hz -25% Ryzen 5-7535HS 16GB, 512GB RTX 2050 4GB
- XBOX Series S 512GB, 6 hónap teljeskörü garanciával, üzletből eladó!
- ASUS VivoBook Max X541UVK i5-7200U 8GB RAM 512GB SSD NVIDIA GeForce 920MX 2GB Windows 11
- Szép! HP EliteBook 840 G10 Hordozható Ultrabook Fémház 14" -50% i5-1335U 32/1TB Iris Xe FHD+
- Új OEM INTEL XEON E-1241V3/E-1270V3
- GYÖNYÖRŰ iPhone 13 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3340
- Fém, összecsukható és kihúzható fotó állvány eladó
- HIBÁTLAN iPhone 13 mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3284
- Designer 4K Monitor - BenQ PD-2700-U
- ÚJ HP Pavilion 16 - 16"IPS WUXGA - Ryzen 5 8540U 16GB - 512GB SSD - Win11 - 3 év garancia - MAGYAR
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



