Tutorial PHP

PHP INÍCIO Introdução ao PHP Instalação do PHP Sintaxe PHP Comentários PHP Variáveis ​​PHP PHP Eco/Impressão Tipos de dados PHP Strings PHP Números PHP Matemática PHP Constantes PHP Operadores PHP PHP If...Else...Elseif Chave PHP Loops PHP Funções PHP Matrizes PHP PHP Superglobais PHP RegEx

Formulários PHP

Manipulação de formulários PHP Validação de formulário PHP Formulário PHP obrigatório URL/e-mail do formulário PHP Formulário PHP completo

PHP Avançado

Data e hora do PHP Incluir PHP Manipulação de arquivos PHP Arquivo PHP Abrir/Ler Arquivo PHP Criar/Gravar Upload de arquivo PHP Cookies PHP Sessões PHP Filtros PHP Filtros PHP Avançados Funções de retorno de chamada do PHP PHP JSON Exceções do PHP

PHP OOP

PHP O que é POO Classes/objetos PHP Construtor PHP Destruidor PHP Modificadores de acesso PHP Herança PHP Constantes PHP Classes abstratas PHP Interfaces PHP Características PHP Métodos estáticos PHP Propriedades estáticas do PHP Namespaces PHP Iteráveis ​​PHP

Banco de dados MySQL

Banco de dados MySQL MySQL Connect MySQL Criar banco de dados MySQL Criar Tabela Dados de inserção do MySQL MySQL Obter Último ID MySQL Inserir Múltiplo Preparado para MySQL Dados de seleção do MySQL MySQL Onde MySQL Ordenar por Dados de exclusão do MySQL Dados de atualização do MySQL Dados de limite do MySQL

PHP XML

Analisadores XML PHP Analisador PHP SimpleXML PHP SimpleXML - Obter PHP XML Expatriado PHP XML DOM

PHP - AJAX

Introdução AJAX PHP AJAX Banco de dados AJAX XML AJAX Pesquisa em tempo real AJAX Enquete AJAX

Exemplos PHP

Exemplos PHP Compilador PHP Teste PHP Exercícios PHP Certificado PHP

Referência PHP

Visão geral do PHP Matriz PHP Calendário PHP Data do PHP Diretório PHP Erro PHP Exceção PHP Sistema de arquivos PHP Filtro PHP PHP FTP PHP JSON Palavras-chave PHP PHP Libxml Correio PHP Matemática PHP PHP Diversos PHP MySQLi Rede PHP Controle de saída PHP PHP RegEx PHP SimpleXML Fluxo PHP String PHP Manipulação de variáveis ​​PHP Analisador XML PHP PHP Zip Fusos horários PHP

Filtros PHP


Validando dados = Determine se os dados estão na forma correta.

Sanitizing data = Remova qualquer caractere ilegal dos dados.


A extensão do filtro PHP

Os filtros PHP são usados ​​para validar e higienizar a entrada externa.

A extensão de filtro PHP tem muitas das funções necessárias para verificar a entrada do usuário e foi projetada para tornar a validação de dados mais fácil e rápida.

A filter_list()função pode ser usada para listar o que a extensão de filtro PHP oferece:

Exemplo

<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>

Por que usar filtros?

Muitos aplicativos da Web recebem entrada externa. As entradas/dados externos podem ser:

  • Entrada do usuário de um formulário
  • Biscoitos
  • Dados de serviços da web
  • Variáveis ​​do servidor
  • Resultados da consulta do banco de dados

Você deve sempre validar dados externos!
Dados enviados inválidos podem levar a problemas de segurança e quebrar sua página da web!
Ao usar filtros PHP, você pode ter certeza de que seu aplicativo obtém a entrada correta!



Função PHP filter_var()

A filter_var()função valida e limpa os dados.

A filter_var()função filtra uma única variável com um filtro especificado. São necessários dois dados:

  • A variável que você deseja verificar
  • O tipo de cheque a ser usado

Higienize uma corda

O exemplo a seguir usa a filter_var()função para remover todas as tags HTML de uma string:

Exemplo

<?php
$str = "<h1>Hello World!</h1>";
$newstr = filter_var($str, FILTER_SANITIZE_STRING);
echo $newstr;
?>

Validar um inteiro

O exemplo a seguir usa a filter_var()função para verificar se a variável $int é um inteiro. Se $int for um inteiro, a saída do código abaixo será: "Integer is valid". Se $int não for um inteiro, a saída será: "Integer is not valid":

Exemplo

<?php
$int = 100;

if (!filter_var($int, FILTER_VALIDATE_INT) === false) {
  echo("Integer is valid");
} else {
  echo("Integer is not valid");
}
?>

Dica: filter_var() e problema com 0

No exemplo acima, se $int foi definido como 0, a função acima retornará "Integer não é válido". Para resolver este problema, use o código abaixo:

Exemplo

<?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");
}
?>

Validar um endereço IP

O exemplo a seguir usa a filter_var()função para verificar se a variável $ip é um endereço IP válido:

Exemplo

<?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");
}
?>

Higienize e valide um endereço de e-mail

O exemplo a seguir usa a filter_var()função para primeiro remover todos os caracteres ilegais da variável $email e, em seguida, verificar se é um endereço de e-mail válido:

Exemplo

<?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");
}
?>

Higienize e valide um URL

O exemplo a seguir usa a filter_var()função para primeiro remover todos os caracteres ilegais de um URL e, em seguida, verificar se $url é um URL válido:

Exemplo

<?php
$url = "https://www.w3schools.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");
}
?>

Referência completa do filtro PHP

Para obter uma referência completa de todas as funções de filtro, acesse nossa Referência completa de filtros PHP. Verifique cada filtro para ver quais opções e sinalizadores estão disponíveis.

A referência contém uma breve descrição e exemplos de uso para cada função!