Maison  >  Article  >  développement back-end  >  Comment résoudre l'avertissement « DOMDocument::loadHTML() : entité inattendue » en PHP ?

Comment résoudre l'avertissement « DOMDocument::loadHTML() : entité inattendue » en PHP ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-24 20:52:021004parcourir

How to Resolve the

Avertissement : DOMDocument::loadHTML() : entité inattendue

Dans un script PHP, une erreur se produit lors de la tentative d'analyse HTML à l'aide de DOMDocument ->loadHTML(). L'erreur indique :

Warning: DOMDocument::loadHTML(): htmlParseEntityRef: expecting ';' in Entity

Cause :

Le contenu HTML contient une entité incomplète à laquelle il manque un point-virgule (;). Les entités sont des caractères spéciaux représentés à l'aide du caractère esperluette (&) et d'une séquence de caractères ou d'un code numérique. Par exemple, & représente le caractère esperluette. S'il manque un point-virgule, l'analyseur peut ne pas reconnaître l'entité et générer une erreur.

Solution :

Une façon de résoudre cet avertissement consiste à activer l'erreur interne. gestion à l’aide de libxml_use_internal_errors(). Cette fonction supprime l'avertissement et permet au script de poursuivre son exécution. Voici un exemple :

<code class="php">// enable internal error handling
libxml_use_internal_errors(true);

// create a new DOMDocument
$document = new DOMDocument('1.0', 'UTF-8');

// load HTML
$document->loadHTML($html);

// restore error level
libxml_use_internal_errors(false);</code>

En activant la gestion des erreurs internes, l'avertissement ne sera pas affiché, mais toutes les erreurs rencontrées lors de l'analyse seront stockées en interne et pourront être récupérées à l'aide de libxml_get_errors().

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn