Por exemplo, tags como estão entre os caracteres mais usados no HTML. Embora eles não representem nenhuma ameaça por conta própria, quando mal utilizados, eles podem quebrar toda a página da web.
Esses caracteres HTML também postam uma falha de segurança significativa, especialmente em aplicativos da Web dinâmicos. Isso pode levar à injeção de código malicioso, como JavaScript e Form Data.
A essência deste guia é mostrar como você pode usar o PHP para codificar ou "higienizar" caracteres HTML. A codificação desses personagens em sites dinâmicos impedirá que o script cruzado e protegerá a página da web de quebrar.
O que está codificando?
A codificação refere -se ao processo de conversão de caracteres reservados em entidades de caracteres HTML. As entidades de caracteres HTML são expressas como &value; onde o "valor" representa uma abreviação ou número para cada caractere.
HTML oferece uma coleção abrangente de entidades. No entanto, precisamos apenas nos preocupar com quatro deles para fins de codificação:
Vamos aprender como podemos usar o PHP para codificar esses personagens.
Funções de codificação PHP
O PHP tem duas funções principais que você pode usar para codificar caracteres HTML.
As funções htmlspecialchars () codificam os quatro caracteres principais (acima), enquanto a função htmentities () codificará todos os caracteres possível.
Vamos aprender a usar as duas funções.
Php htmlspecialchars ()
Esta função converte todos os caracteres HTML especiais ou reservados em entidades HTML. Embora você possa especificar, a função ignorará citações únicas por padrão.
A sintaxe geral da função é como mostrado:
htmlentities (string $ string, int $ flags bool);A função aceita a sequência que contém o HTML a ser codificado. Você também pode especificar valores de sinalizador que permitem ajustar como o método opera.
O PHP também permite especificar o método de codificação que deseja usar para as entidades HTML. A imagem a seguir mostra os charsets suportados.
O exemplo a seguir mostra como usar o método htmlspecialchars ().
$ str = "html usa para Tag";O exemplo acima codificará os caracteres HTML especificados na variável $ str.
A saída é como mostrado:
HTML usa < and > para TagSe você deseja que a função processe citações únicas e duplas, você pode usar um sinalizador como mostrado no exemplo abaixo:
$ str = "Uma única citação como 'e' será ignorada por padrão";Depois de executar o código acima, a função processará as citações únicas e fornecerá uma saída como mostrado:
Uma única citação como 'e' será ignorada por padrão
Php htmlentities ()
Veremos o próximo personagem de codificação é o php htmlentities (). Esta função converte todos os caracteres HTML aplicáveis em entidades HTML. É uma escolha perfeita quando você precisa processar seu html com segurança.
A sintaxe geral da função é como mostrado:
htmlentities (string $ string, int sinalizadores);A função é muito semelhante a htmlspecialchars (), exceto que processa todos os caracteres que pode por padrão.
O exemplo a seguir mostra como usar a função htmlentities ().
$ str = "Isso é válido Código HTML
";O código acima deve retornar todas as tags convertidas a entidades como:
Isso é válido Código HTML
Semelhante à função htmlspecialchars (), ele suporta sinalizadores e codificando charset. Verifique a documentação para descobrir mais.
Conclusão
Neste guia, você aprendeu como o básico da codificação de caráter html. Você também aprendeu a usar o PHP para converter caracteres HTML em entidades HTML.
Obrigado por ler e ficar atento a mais.