PHP filtriranje podatkov
PHP vključuje zanimivo filtriranje podatkov, za katero lahko rečem da je res uporabno, pa ne samo v smislu filtriranja ampak kar preprosto preverjanje podatkov, bodisi oddanih ali pa preverjanje podatkov pri izpisovanju. Kako preveriti če je uporabnik v polje za ceno vpisal samo številke, ali pa ali je pravilen email, pravilen URL naslov. No seveda se da to opraviti iz preg exprešni, ampak zakaj če obstaja lažji način?
No gre za tako imenovan filter_var oz. Data Filtering. Stvari postanejo res tako zelo preproste, še bolj preprosta pa je uporaba, vse kar je potrebno vedeti so konstante za filtriranje, seznam teh konstant najdete tukaj.
Primeri:
Filtriranje email naslova:
if (filter_var('bob@example.com', FILTER_VALIDATE_EMAIL)) {
return true;
}
Filtriranje URLja
if (filter_var('http://www.domena.com', FILTER_VALIDATE_URL)) {
return true;
}
Filtriranje ŠTEVILK (vrne false oz. ne vrne ničesar, ker primer vsebuje črke!)
if (filter_var('1234567abc', FILTER_VALIDATE_INT)) {
return true;
}
Preveri če je IP
if (filter_var('127.0.0.1', FILTER_VALIDATE_INT)) {
return true;
}
Pri dobesednem filtriranju podatkov, pa vrne filtrirane podatke, tako na primer vrne samo številke pri uporabi:
echo filter_var('123456789abcd', FILTER_SANITIZE_NUMBER_INT) ;
No na spletu sem našel ta seznam, ki je res popoln in opremljen s primeri.
P.S.: V if stavku uporabljam, ker sicer pri true vrednosti vrača celoten string oz. v primeru emaila vrne email.
Še ni komentarjev.
Komentiraj ...

Anketa
Tagi
WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.


