- Fotók, videók mobillal
- A nap színe: a vörös
- Elmentünk fotózni a Xiaomi 17 Ultrával
- Xiaomi 15 Ultra - kamera, telefon
- Samsung Galaxy A56 - megbízható középszerűség
- Okosóra és okoskiegészítő topik
- Xiaomi 15 - kicsi telefon nagy energiával
- One mobilszolgáltatások
- OnePlus 15 - van plusz energia
- iPhone topik
Ú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
- Mid tower gèp ház
- 2024-es Lenovo ThinkPad T14 Gen4 laptop, gyári garanciával, eredeti magyar billentyűzettel eladó!
- Makulátlan Iphone 13 Midnigth Black 128 GB 88% 2024.12.23-án vásárolt
- TESTRESZABHATÓ/GARIS/ Ryzen 5 5600/16GB DDR4/RX 6700 XT 12 GB/ 1 TB M.2 SSD/2 TB HDD
- ASUS ROG STRIX G16 Gamer laptop 16" -40% Raptor i9-14900HX 24Mag 16/1TB 240Hz RTX 4070 8GB QHD
- HP EliteBook 840 G7 i5-10210U 16GB 256GB FHD 400nit 1 év garancia
- GYÖNYÖRŰ iPhone 14 Plus 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4521, 98% AKKSI
- AKCIÓ! LENOVO ThinkPad P15 Gen1 munkaállomás - i7 10850H 16GB DDR4 256GB SSD Quadro T1000 4GB W
- HIBÁTLAN iPhone 13 256GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS4569, 100% AKKSI
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


