- bambano: Bambanő háza tája
- Magga: PLEX: multimédia az egész lakásban
- sziku69: Fűzzük össze a szavakat :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- Steven: Sokat utazó kávéfüggők ide!
- eBay-es kütyük kis pénzért
- bitpork: Malac java, új kuMpi, káposzta sali
- btz: Internet fejlesztés országosan!
Új hozzászólás Aktív témák
-
cucka
addikt
Php-ban bele lehet futni hasonló furcsaságokba, köszönhetően a típusrendszern és az ellenőrző függvények furcsaságainak. Pár hasznos tudnivaló.
Először is: a php-ban minden változónak van valamilyen típusa.
A null az egy érték és egy speciális típus is, tehát ha egy változó értéke null, akkor a típusa is null lesz. A korábban nem deklarált változók értéke (és típusa is) null, ugyanez igaz akkor, ha egy tömb nemlétező indexére hivatkozol.
A == és a === közötti különbség, hogy az előbbinél a php a megfelelő típusúra cast-olja az operandusokat, utóbbinál nem cast-ol, hanem ellenőrzi az operandusok típusát. Ezért van az, hogy egy null értékű változó és egy nem deklarált változó egyenlő lesz mindkét egyenlőségvizsgálat esetén.
Az automata cast-olással szintén érdemes vigyázni, lásd a köv. kód, ami azt fogja kiírni, hogy 102:
print ('100 forintnak 50 a fele' +2);Az is_int (is_null, stb.) függvények a paraméterként adott kifejezés típusát ellenőrzik, semmi mást. Például lásd a köv. kifejezéseket, melléjük írtam a kif. eredményét.
(true==is_int(3)) //IGAZ
(true==is_int('3')) //HAMIS
(true==is_int('3'+0)) //IGAZ
A POST-olt adatok mindig stringként érkeznek, tehát az is_int nem igazán jó ellenőrzésnek. Helyette használható az is_numeric(), ami stringként megadott számokra is az elvárásoknak megfelelő eredményt adja. Az is_int(null) minden esetben false-al tér vissza (mivel a null típus és az int típus különbözőek).Az empty() függvény megint érdekes, először is azért, mert nem függvény, nem is viselkedik függvényként. Kizárólag változót lehet neki paraméterként megadni. Az empty igazzal fog visszatérni, ha a paraméterének értéke null, 0, '0', üres string vagy üres tömb. Ezek közül a problémát a '0' érték jelenti, ami egyértelműen egy nem üres string
A fentiek mellett használható még az isset() is, ami szintén nem függvény és csak változó paraméterrel működik. Az isset akkor ad vissza true értéket, ha a paraméterként kapott változó korábban deklarálva volt és az értéke nem null.
Php-ban nagyjából ezek az eszközök vannak erre a feladatra, remélem sikerült újat is mondanom.
-
Sk8erPeter
nagyúr
Az empty() függvény miért nem megfelelő?
-----------------
(#5469) Tele von Zsinór: köszi a választ, akkor itt az ideje, hogy én is írjak pár saját hibaosztályt, és ezeket dobáljam a megfelelő helyeken.
Példának okáért milyen esetekre írtál saját hibaosztályt? Csak a gondolkodásmódra vagyok kíváncsi.
Új hozzászólás Aktív témák
Hirdetés
- Anglia - élmények, tapasztalatok
- BMW topik
- Kazy Computers vélemények - tapasztalatok
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- OLED TV topic
- Kecskemét és környéke adok-veszek-beszélgetek
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen egeret válasszak?
- Kerékpárosok, bringások ide!
- Videó stream letöltése
- További aktív témák...
- XPS 14 9440 14.5" FHD+ IPS Intel Ultra 7 155H 16GB 512GB NVMe ujjlolv IR kam gar
- Thinkpad X13 Gen4 13.3" FHD+ IPS i7-1365U 16GB 512GB NVMe ujjlolv gar
- Asus RTX 2070 Super OC 8GB GDDR6 Videokártya!
- ASUS Phoenix GTX 1650 OC 4GB GDDR5 Videokártya
- 5520 27% 15.6" FHD IPS érintő i7-1185G7 MX450 32GB 512GB NVMe ujjlolv IR kam gar
- BESZÁMÍTÁS! MSI Z77 MPOWER Z77 chipset alaplap garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB RAM RTX 5070Ti 16GB GAMER PC termékbeszámítással
- Intel X540-T2 dual-port 10GbE RJ45 hálózati vezérlő (10Gbit, 2 port, áfás számla, garancia)
- ÁRGARANCIA! Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- AKCIÓ! GIGABYTE GA-Z170X-UD3 Z170 chipset alaplap garanciával hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest