File_get_contents() interrompt le formatage XML en HTML
Lors de l'utilisation de file_get_contents() pour récupérer le contenu d'un document HTML distant, certains caractères spéciaux peuvent mauvais fonctionnement. Cela se produit principalement avec le contenu codé en UTF-8 qui implique des caractères tels que Ľ, Š, Č, Ť, Ž et autres. Au lieu de s'afficher correctement, ces caractères affichent des versions corrompues telles que Å, ¾, ¤ et des symboles absurdes similaires.
Solution :
Pour résoudre ce problème, convertissez le récupéré le contenu des entités HTML à l'aide de la fonction mb_convert_encoding(). Voici le code modifié :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sk" lang="sk"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Language" content="sk" /> <title>Test</title> </head> <body> <?php $html = file_get_contents('http://example.com'); $convertedHtml = mb_convert_encoding($html, 'HTML-ENTITIES', "UTF-8"); echo $convertedHtml; ?> </body> </html>
En convertissant les caractères UTF-8 en leurs entités HTML correspondantes, nous garantissons le bon rendu des caractères spéciaux dans le document HTML chargé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!