De date Validating = A determina dacă datele sunt într-o formă adecvată.
Igienizarea date = Eliminați orice caracter ilegal din datele.
Extensia PHP Filtru
Filtrele PHP sunt utilizate pentru a valida și dezinfecteze intrare externă.
Extensia PHP Filtrul are multe dintre funcțiile necesare pentru verificarea introduse de utilizator, și este proiectat pentru a face validarea datelor mai ușor și mai rapid.
filter_list() Funcția poate fi utilizată pentru a lista ce ofera extensia de filtrare PHP:
Exemplu
<table>
<tr>
<td>Filter Name</td>
<td>Filter ID</td>
</tr>
<?php
foreach (filter_list()
as $id =>$filter) {
echo '<tr><td>' .
$filter . '</td><td>' . filter_id($filter) . '</td></tr>';
}
?>
</table>
Run exemplu » De ce să utilizați filtre?
Multe aplicații web primesc intrare externă. intrare / externe de date pot fi:
- datele introduse de utilizator dintr-o formă
- Cookies
- Date de servicii Web
- variabilele server
- Rezultatele interogarea bazei de date
Ar trebui să valideze întotdeauna date externe!
datele prezentate nevalide pot duce la probleme de securitate și rupe pagina dvs. web!
Prin utilizarea filtrelor PHP puteți fi sigur că aplicația devine intrarea corectă!
PHP filter_var() Funcția
filter_var() funcția validați și steriliza date.
filter_var() funcția filtre o singură variabilă cu un filtru specificat. Este nevoie de două bucăți de date:
- Variabila pe care doriți să verificați
- Tipul de validare pentru a utiliza
Salubrizarea un șir
Exemplul următor utilizează filter_var() funcția pentru a elimina toate etichetele HTML dintr - un șir de caractere:
Exemplu
<?php
$str = "<h1>Hello World!</h1>";
$newstr
= filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>
Run exemplu » Validați un Integer
Exemplul următor utilizează filter_var() funcția de a verifica dacă variabila $ int este un număr întreg. Dacă $ int este un număr întreg, ieșirea din codul de mai sus va fi: "Integer is valid" . Dacă $ int nu este un număr întreg, de ieșire va fi: "Integer is not valid" :
Exemplu
<?php
$int = 100;
if (!filter_var($int, FILTER_VALIDATE_INT) ===
false) {
echo("Integer is valid");
} else {
echo("Integer is not
valid");
}
?>
Run exemplu » Sfat: filter_var() și Problemă cu 0
În exemplul de mai sus, în cazul în care $ int a fost setat la 0, funcția de mai sus se va întoarce "Integer is not valid" . Pentru a rezolva această problemă, utilizați codul de mai jos:
Exemplu
<?php
$int = 0;
if (filter_var($int,
FILTER_VALIDATE_INT) === 0 || !filter_var($int, FILTER_VALIDATE_INT) ===
false) {
echo("Integer is valid");
} else {
echo("Integer is not
valid");
}
?>
Run exemplu » Validează o adresă IP
Exemplul următor utilizează filter_var() funcția pentru a verifica daca ip -ul $ variabila este o adresă IP validă:
Exemplu
<?php
$ip = "127.0.0.1";
if (!filter_var($ip, FILTER_VALIDATE_IP) ===
false) {
echo("$ip is a valid IP address");
} else {
echo("$ip
is not a valid IP address");
}
?>
Run exemplu » Salubrizarea și validați o adresă de e-mail
Exemplul următor utilizează filter_var() funcția pentru a elimina mai întâi toate caracterele ilegale din variabila $ e - mail, apoi verificați dacă este o adresă de e - mail validă:
Exemplu
<?php
$email = "[email protected]";
// Remove all illegal
characters from email
$email = filter_var($email,
FILTER_SANITIZE_EMAIL);
// Validate e-mail
if (!filter_var($email, FILTER_VALIDATE_EMAIL) ===
false) {
echo("$email is a valid email address");
} else {
echo("$email
is not a valid email address");
}
?>
Run exemplu » Salubrizarea și validați o adresă URL
Exemplul următor utilizează filter_var() funcția pentru a elimina mai întâi toate caracterele ilegale de la o adresă URL, apoi verificați dacă $ url - ul este o adresă URL validă:
Exemplu
<?php
$url = "http://www.w3ii.com";
// Remove all illegal characters from a url
$url = filter_var($url,
FILTER_SANITIZE_URL);
// Validate url
if (!filter_var($url, FILTER_VALIDATE_URL) ===
false) {
echo("$url is a valid URL");
} else {
echo("$url
is not a valid URL");
}
?>
Run exemplu » Complet PHP Filtru de referință
Pentru o referință completă a tuturor funcțiilor de filtrare, du - te pentru a completa nostru de referință PHP filtru. Verificați fiecare filtru pentru a vedea ce opțiuni sunt disponibile și steaguri.
Referința conține o scurtă descriere și exemple de utilizare, pentru fiecare funcție!