Menu principale:
$emailValida = "test@gmail.com"; $emailNonValida = "invalid.email"; if (filter_var($emailValida, FILTER_VALIDATE_EMAIL)) { echo "$emailValida valida"; } if (filter_var($emailNonValida, FILTER_VALIDATE_EMAIL)) { echo "$emailNonValida valida"; }
FILTRO | DESCRIZIONE |
FILTER_VALIDATE_BOOLEAN | Restituisce true per i valori "1", "true", "on" e "yes". |
FILTER_VALIDATE_EMAIL | Verifica la validità di una mail. |
FILTER_VALIDATE_FLOAT | Verifica che una variabile sia un float valido. |
FILTER_VALIDATE_INT | Verifica che la variabile sia un intero valido. È possibile anche verificare che sia compreso in un range. |
FILTER_VALIDATE_IP | Verifica la validità di un IP. |
FILTER_VALIDATE_REGEXP | Verifica che la variabile sia valida per un’espressione regolare. |
FILTER_VALIDATE_URL | Verifica la validità di un URL |
$valori = [ '1', '-1', '2.0', 'asd', '0', '5', '10', ]; function validaIntero($valore) { $options = [ 'options' => [ 'min_range' => 1, 'max_range' => 5, ] ]; if (filter_var($valore, FILTER_VALIDATE_INT, $options)) { echo "Il valore $valore è valido\n"; } else { echo "Il valore $valore non è valido\n"; } } foreach($valori as $valore) { validaIntero($valore); }
Il valore 1 è valido Il valore -1 non è valido Il valore 2.0 non è valido Il valore asd non è valido Il valore 0 non è valido Il valore 5 è valido Il valore 10 non è valido
$email1 = "test@gmail.com"; $email2 = "(test@gmail.com)"; $email3 = "testATgmail.com"; function sanitizzaEmail($email) { $emailSanitizzata = filter_var($email, FILTER_SANITIZE_EMAIL); $emailValida = filter_var($emailSanitizzata, FILTER_VALIDATE_EMAIL); echo "Indirizzo email: $email\n"; echo "Indirizzo email sanitizzato: $emailSanitizzata\n"; echo "Email valida: " . ($emailValida ? 'SI' : 'NO') . "\n\n"; } sanitizzaEmail($email1); sanitizzaEmail($email2); sanitizzaEmail($email3); //Risultato: Indirizzo email: test@gmail.com Indirizzo email sanitizzato: test@gmail.com Email valida: SI Indirizzo email: (test@gmail.com) Indirizzo email sanitizzato: test@gmail.com Email valida: SI Indirizzo email: testATgmail.com Indirizzo email sanitizzato: testATgmail.com Email valida: NO
FILTRO | DESCRIZIONE |
FILTER_SANITIZE_EMAIL | Rimuove tutti i caratteri eccetto lettere, numeri e !#$%&'*+-/=?^_`{ |
FILTER_SANITIZE_ENCODED | Codifica un URL. |
FILTER_SANITIZE_MAGIC_QUOTES | Rimuove tutti i caratteri eccetto numeri e i simboli + e – |
FILTER_SANITIZE_NUMBER_FLOAT | Rimuove tutti i caretteri eccetto i simboli + e – |
FILTER_SANITIZE_NUMBER_INT | Escape HTML dei caratteri '"<>& |
FILTER_SANITIZE_SPECIAL_CHARS | Equivale a richiamare la funzione htmlspecialchars() con il parametro ENT_QUOTES. |
FILTER_SANITIZE_STRING | Rimuove tutti i tags, opzionalmente codifica i caratteri speciali. |
FILTER_SANITIZE_STRIPPED | Alias del filtro FILTER_SANITIZE_STRING. |
FILTER_SANITIZE_URL | Rimuove tutti i caratteri eccetto lettere, numeri e $-_.+!*'(),{} |
FILTER_UNSAFE_RAW | Non compie operazioni, opzionalmente rimuove o codifica caratteri speciali. |
http://localhost/test/?redirect=<>
FILTER_SANITIZE_ENCODED: $url = "http://localhost/test/?firstName=Simone&lastName=D'Amico"; echo filter_var($url, FILTER_SANITIZE_ENCODED);
http%3A%2F%2Flocalhost%2Ftest%2F%3FfirstName%3DSimone%26lastName%3DD%27Amico