Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan Amaran \"DOMDocument::loadHTML(): Unexpected Entiti\" dalam PHP?

Bagaimana untuk Menyelesaikan Amaran \"DOMDocument::loadHTML(): Unexpected Entiti\" dalam PHP?

Barbara Streisand
Barbara Streisandasal
2024-10-24 20:52:02924semak imbas

How to Resolve the

Amaran: DOMDocument::loadHTML(): Entiti Tidak Dijangka

Dalam skrip PHP, ralat berlaku semasa cuba menghuraikan HTML menggunakan DOMDocument ->loadHTML(). Ralat menyatakan:

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

Punca:

Kandungan HTML mengandungi entiti tidak lengkap yang tiada koma bertitik (;). Entiti ialah aksara khas yang diwakili menggunakan aksara ampersand (&) dan jujukan aksara atau kod angka. Contohnya, & mewakili watak ampersand. Jika tiada koma bertitik, penghurai mungkin tidak mengecam entiti dan menimbulkan ralat.

Penyelesaian:

Satu cara untuk menyelesaikan amaran ini ialah dengan mendayakan ralat dalaman pengendalian menggunakan libxml_use_internal_errors(). Fungsi ini menyekat amaran dan membenarkan skrip meneruskan pelaksanaan. Berikut ialah contoh:

<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>

Dengan mendayakan pengendalian ralat dalaman, amaran tidak akan dipaparkan, tetapi sebarang ralat yang dihadapi semasa penghuraian akan disimpan secara dalaman dan boleh diambil menggunakan libxml_get_errors().

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Amaran \"DOMDocument::loadHTML(): Unexpected Entiti\" dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn