Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mendapatkan HTML dalaman DOMNodes Menggunakan Pelaksanaan DOM PHP?

Bagaimana untuk Mendapatkan HTML dalaman DOMNodes Menggunakan Pelaksanaan DOM PHP?

Barbara Streisand
Barbara Streisandasal
2024-12-29 12:54:11980semak imbas

How to Get the innerHTML of DOMNodes Using PHP's DOM Implementation?

Mendapatkan innerHTML DOMNodes dalam PHP DOM Pelaksanaan

Apabila bekerja dengan pelaksanaan DOM PHP, adalah penting untuk memahami kaedah yang tersedia untuk mendapatkan innerHTML daripada DOMNodes. Penerokaan berikut akan menyediakan penyelesaian yang komprehensif untuk tugas biasa ini.

Pelaksanaan PHP:

Untuk memperoleh innerHTML DOMNode tertentu, PHP menawarkan dua fungsi utama:

  • innerHTML (Custom Fungsi):

Nota Pengguna Manual PHP #89718 menyediakan versi terkini bagi fungsi tersuai ini:

function DOMinnerHTML(DOMNode $element)
{
    $innerHTML = "";
    $children  = $element->childNodes;

    foreach ($children as $child)
    {
        $innerHTML .= $element->ownerDocument->saveHTML($child);
    }

    return $innerHTML;
}

Fungsi ini secara rekursif melintasi anak-anak DOMNode, menggunakan saveHTML () untuk mendapatkan semula perwakilan HTML setiap satu anak.

  • ownerDocument->saveHTML():

Kaedah ini mengembalikan perwakilan HTML DOMNode yang ditentukan. Ia boleh digunakan pada pemilikDokumen DOMNode untuk mendapatkan innerHTMLnya.

Contoh Penggunaan:

Berikut ialah contoh yang menunjukkan penggunaan fungsi DOMinnerHTML():

$dom = new DOMDocument();
$dom->preserveWhiteSpace = false;
$dom->formatOutput       = true;
$dom->load($html_string);

$domTables = $dom->getElementsByTagName("table");

// Iterate over DOMNodeList (Implements Traversable)
foreach ($domTables as $table)
{
    echo DOMinnerHTML($table);
}

Skrip ini mendapatkan semula semua jadual daripada rentetan HTML dan mencetaknya innerHTML menggunakan fungsi DOMinnerHTML().

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan HTML dalaman DOMNodes Menggunakan Pelaksanaan DOM 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