PHP: Pozor na záke?nou funkci filter_var() a FILTER_VALIDATE_INT. Provádíte validaci nulových hodnot (a nejen t?ch) správn??

blog.zdenekvecera.cz, 24. května 2020 ve 00:11:00, 1x přečteno

Chceme ov??it, jestli vstup od uživatele je opravdu jakákoliv hodnota integer. O?ekáváme tedy celé záporné ?íslo, celé kladné ?íslo nebo nulu. Pokud pro validaci celo?íselných hodnot (FILTER_VALIDATE_INT) používáme PHP funkci filter_var(), m?žeme se p?i nevhodn? použité podmínce dostat do problém? s nulou.

Když funkci filter_var() p?edáme vstupní hodnotu, o?ekáváme, že nám vrátí hodnotu 1, pokud bude hodnota celé ?íslo a ve všech ostatních p?ípadech vrátí hodnotu 0.

Pokud se k nám dostane hodnota z odeslaného formulá?e, ?íslo m?že být jako sou?ást ?et?zce. Nebo prom?nnou o?ezáváme pomocí funkce trim(). V zápisu kódu je to ekvivalentní tomuto:

Kdybychom ale pro validaci použili funkce is_int() nebo is_float(), tak v p?ípad? ?íselné hodnoty p?edané jako ?et?zec máme problém. Ob? funkce totiž kontrolují datový typ.

Pokračování na: blog.zdenekvecera.cz

Související články

8 způsobů jak vydělávat na internetu

V článku se dozvíš základní informace o různých způsobech jak vydělat peníze na internetu. Některé možnosti používají internet jen

Co nového p?ináší WordPress 5.1 a na co si dát pozor

Ve ?tvrtek vyšla aktualizace WordPress 5.1 s názvem „Betty“. Na aktualizaci se podílelo celkem 563 lidí v?etn? Matta Mullenwega, který…

Vylepšujeme zdrojové kódy redak?ního systému WordPress

WordPress je open-source redak?ní systém, což nejen znamená, že na jeho vývoji pracují desítky lidí po celém sv?t?, ale p?edevším, že…


Komentáře

(nezobrazuje se)