HTML Encode Online

Converta texto para entidades HTML em tempo real. Encoda < > & " ' para uso seguro em HTML.

HTML Encode online

Digite ou cole o texto para converter em entidades HTML em tempo real. Processamento 100% no navegador — nenhum dado é enviado ao servidor.

Equivalente ao htmlspecialchars() do PHP — protege contra XSS ao exibir dados de usuários em HTML.

O que é HTML Encode?

HTML Encode (ou HTML Escape) é o processo de substituir caracteres especiais do HTML por suas entidades equivalentes, tornando o texto seguro para exibição em páginas web.

Os cinco caracteres convertidos são:

EntradaSaídaNome da entidade
&&Ampersand
<&lt;Less-than
>&gt;Greater-than
"&quot;Quotation mark
'&#x27;Apostrophe

Por que usar HTML Encode?

Prevenção de XSS

XSS (Cross-Site Scripting) é uma das vulnerabilidades web mais comuns. Acontece quando dados de usuários são inseridos diretamente em HTML sem sanitização:

<!-- Dados do usuário (não sanitizados): -->
Olá, <script>alert('XSS')</script>!

<!-- Após HTML Encode: -->
Olá, &lt;script&gt;alert('XSS')&lt;/script&gt;!

Com a codificação, o navegador exibe o texto literal <script>alert('XSS')</script> em vez de executá-lo.

Exibição de código-fonte

Para mostrar exemplos de código HTML em tutoriais ou documentação:

<!-- Sem encode (o navegador renderiza a tag): -->
Escreva <b>negrito</b> para formatar o texto.

<!-- Com encode (exibe o código literal): -->
Escreva &lt;b&gt;negrito&lt;/b&gt; para formatar o texto.

Equivalente em linguagens de programação

LinguagemFunção
PHPhtmlspecialchars($str, ENT_QUOTES, 'UTF-8')
Pythonhtml.escape(str)
JavaScriptSem nativo — use uma biblioteca ou DOM
Gohtml.EscapeString(str)
JavaStringEscapeUtils.escapeHtml4(str)
RubyCGI.escapeHTML(str)

HTML Encode em frameworks

Frameworks modernos fazem HTML Encode automaticamente em seus sistemas de templates:

  • React/Vue/Angular: interpolação {{ variavel }} codifica automaticamente
  • Laravel Blade: {{ $variavel }} usa htmlspecialchars por padrão
  • Django: {{ variavel }} escapa automaticamente (use |safe para desabilitar)
  • Jinja2: auto-escape configurável

Se você usa um framework moderno, provavelmente não precisa codificar manualmente — mas é essencial entender o que acontece por baixo.

Perguntas frequentes

Preciso codificar dentro de <script>?

Não. Dentro de tags <script>, as regras são do JavaScript, não do HTML. Para dados em JavaScript, use JSON.stringify() ou escaping específico de JavaScript.

HTML Encode é o mesmo que URL Encode?

Não. HTML Encode converte < em &lt; para contextos HTML. URL Encode converte < em %3C para contextos de URL. Use cada um no contexto correto.

Posso usar &apos; para a aspas simples?

&apos; é válido em XML e HTML5, mas não era suportado no HTML4. Por compatibilidade, prefira &#x27; ou &#39;.

Veja também