✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Você deve estar usando funções de filtragem PHP, parte 1

10

Já falei sobre sanitização de dados no WordPress em posts anteriores. Este é um tópico importante não apenas para aqueles que trabalham para construir soluções para outros no WordPress, mas também para aqueles que estão escrevendo código que irá interagir diretamente com um banco de dados via PHP.

Claro, existem funções nativas do WordPress para facilitar esse processo, mas também existem funções de filtragem PHP integradas para ajudar com isso. Ou seja filter_var, e filter_inpute essas são coisas que eu acho que são úteis para os desenvolvedores PHP saberem.

Funções de Filtragem PHP, Parte 1: Variáveis

A filtragem de variáveis ​​é feita pela filter_varfunção apropriadamente nomeada. A definição oficial é:

Filtra uma variável com um filtro especificado

O manual do PHP

A definição em si pode parecer um pouco circular, especialmente se você está apenas começando com PHP ou usando funções de filtragem. O importante a entender nesta definição é o que um filtro realmente é.

Então, se você está acostumado a trabalhar com, digamos, valores booleanos, números inteiros, endereços de e-mail e assim por diante (e quem não está?), então faz mais sentido, não é? Ou seja, se você precisar fornecer algum tipo de validação em torno desses tipos de valores, isso pode ajudar.

O que é ótimo é que, independentemente do que você está filtrando, ele filter_varretornará falsesempre que o filtro falhar.

Digamos que você queira filtrar um endereço de e-mail, então você pode fazer algo assim:

  • filter_var($emailAddress, FILTER_VALIDATE_EMAIL);

Claro, não é sem algumas pegadinhas. Por exemplo, ele não validará domínios não latinos. Mais sobre isso momentaneamente.

De qualquer forma, talvez você queira filtrar outros tipos de valores:

  • filter_var($url, FILTER_VALIDATE_URL)
  • filter_var('1001', FILTER_VALIDATE_INT)

E você pode torná-los mais complicados, dependendo de suas necessidades. Digamos, por exemplo, que você precise determinar se um IP é público. Então você pode usar algo mais elaborado como isto:

  • filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)

A questão é que é importante saber como filter_varfunciona e quais filtros estão disponíveis. Isso é realmente onde a utilidade disso entra em jogo. Para isso, recomendo ler os filtros de validação que o PHP oferece.

Por fim, lembre-se da observação acima sobre domínios não latinos com endereços de e-mail? Existem alguns casos como este com determinados recursos que você precisará revisar o que o manual tem a dizer sobre determinados URLs, domínios e assim por diante antes de usá-los.

Nesses casos, infelizmente, filter_varnem sempre pode funcionar. Em vez disso, as expressões regulares podem ser uma substituição adequada.

E quanto à filtragem de entradas?

Se você tem experiência em trabalhar também com variáveis ​​como $_GETe $_POSTentão existe outra função de filtragem específica para isso.

E no próximo post, mostrarei como usar melhor os que muitos de nós tradicionalmente usam.

Fonte de gravação: tommcfarlin.com

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação