Há algumas semanas, compartilhei como usei o PHP DOMDocument para atualizar de forma confiável todos os URLs de imagens de HTTP padrão para HTTPS. O DOMDocument fez com que um problema difícil parecesse incrivelmente fácil… mas com um efeito colateral que demorei um pouco para perceber: Os caracteres UTF-8 estavam sendo transformados em outro conjunto de caracteres. Eu estava vendo um monte de caracteres estranhos como “ãç³” e””ã®é” em todas as postagens do blog.


Eu sabia que o problema estava acontecendo durante a análise do DOMDocument e que eu precisava encontrar uma solução rapidamente. A solução era apenas um pequeno trecho de código:


// Create a DOMDocument instance 
$doc = new DOMDocument();

// The fix: mb_convert_encoding conversion
$doc->loadHTML(mb_convert_encoding($content, 'HTML-ENTITIES', 'UTF-8'));


Depois de definir o conjunto de caracteres com mb_convert_encoding, os caracteres estranhos desapareceram e os caracteres desejados voltaram ao lugar. Ufa!

  • evento afterscriptexecute
  • Efeito Page Peel usando MooTools