- Milyen belső merevlemezt vegyek?
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Vezetékes FEJhallgatók
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Azonnali VGA-s kérdések órája
- Asztrofotózás
- Fejhallgató erősítő és DAC topik
- OLED TV topic
- Kormányok / autós szimulátorok topikja
Új hozzászólás Aktív témák
-
cucka
addikt
válasz
#68216320
#12696
üzenetére
Hogy világos legyen az empty és az isset közötti különbség:
A következő két feltétel ekvivalens, leszámítva egy notice-t:
isset($v)
$v !== null
Tehát az isset true-val fog visszatérni bármilyen változóra, ami nem létezik, vagy létezik és a típusa/értéke null. Jól látható, hogy a neve ellenére az isset()-nek valójában semmi köze ahhoz, hogy egy változó (vagy tömb index) definiált-e vagy sem. (Ennek eldöntésére a get_defined_vars() való).
Az isset() abban az esetben működik biztonságosan, ha soha, semmilyen körülmények között nem használod a null értéket egyetlen változódnál sem. Felhasználó által post-olt űrlapok esetén ez alapból adott, mert minden értéked a tömbben string vagy array típusú, a kód többi részében viszont a te feladatod ezt biztosítani.És a következő két sor szintén ekvivalens
empty($v)
!isset($v) || $v != true
Az empty() az ekvivalens feltétel második fele miatt problémás. Itt a != operátort látod, ami azt jelenti, hogy a php itt a $v értékét előbb át fogja cast-olni bool típusúra. Ezért van az, hogy a "", "0", "0.0" stringekre az empty egyaránt igazzal fog visszatérni. A gyarkolatban ebből az következik, hogy az empty() teljesen alkalmatlan bármire, visszatérési értékének semmi köze ahhoz, hogy "üres"-e a változó értéke vagy sem. Javaslom, soha, semmilyen körülmények között ne használd az empty()-t, ez egész egyszerűen egy rosszul kitalált nyelvi elem a php-ban.(Egyébként is, a php-ban az == és != operátorok nem tranzitívak, ez elég ok ahhoz, hogy kerülendők legyenek. Helyette javasolt a === és !==, illetve úgy megírni a kódot, hogy tisztában legyél vele, melyik változód milyen típusú.)
Ez így nagyjából érthető?

Új hozzászólás Aktív témák
- Milyen belső merevlemezt vegyek?
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Windows 11
- Linux Mint
- Kerékpárosok, bringások ide!
- Vezetékes FEJhallgatók
- exHWSW - Értünk mindenhez IS
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- További aktív témák...
- AMD Radeon RX 7900 XT 20GB XFX Speedster MERC310 Garanciás!
- Playstation 5 Slim Disc Edition 1TB, újra fémpasztázva, 6 hó garanciával, Bp-i üzletből eladó!
- CANON Objektív ZOOM Lencse EF-S 18-55mm 1:3.5-5.6 IS / 58
- Chieftec CTG-500-80P 500W 80+ minősítésű ATX tápegység
- Gigabyte GA-H110M-S2H (rev: 1.0 LGA 1151 alaplap, + i5-6600 CPU, + Garancia!
- Asus ROG Zephyrus G15 - 15.6" 4K 120Hz - Ryzen 7 6800HS - 24GB - 512GB - RTX 3060 - 2 hó garancia -
- LG 65B4 - 65" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- Lenovo ThinkPad L14 G2 i5-1135G7 32GB 512GB 14" FHD 1 év garancia
- Bomba ár! HP EliteBook 845 G10 - Ryzen 5 7540U I 16GB I 512SSD I 14,1" Touch I Cam I W11 I NBD Gari!
- 143 - Lenovo LOQ (15IRH8) - Intel Core i5-13500H, RTX 4060 (ELKELT)
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő




