Heim >Backend-Entwicklung >PHP-Tutorial >Wie erhalte ich das innerHTML eines DOMNode mithilfe der PHP-DOM-API?

Wie erhalte ich das innerHTML eines DOMNode mithilfe der PHP-DOM-API?

Susan Sarandon
Susan SarandonOriginal
2024-12-18 06:38:10742Durchsuche

How to Get the innerHTML of a DOMNode Using the PHP DOM API?

So greifen Sie auf das DOM-Element InnerHTML in der PHP-DOM-API zu

In der PHP-DOM-Implementierung erfordert der Zugriff auf das innerHTML eines DOMNode einen bestimmten Ansatz . Hier ist eine zuverlässige Lösung und wie sie im Vergleich zu anderen Optionen abschneidet.

Die PHP-DOM-API bietet keine dedizierte Funktion zum Abrufen des innerHTML. Anders als in JavaScript, wo innerHTML eine Eigenschaft eines Elements ist, müssen Sie in PHP DOM manuell über die untergeordneten Knoten des Knotens iterieren, um innerHTML zu erstellen.

Aktualisierte Variante mit PHP-Handbuch-Benutzerhinweis #89718

Der Benutzerhinweis schlägt eine aktualisierte Variante für den Aufbau vor innerHTML:

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

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

    return $innerHTML; 
} 

Beispielverwendung

Angenommen, Sie haben einen HTML-String in $html_string gespeichert, können Sie diese Funktion wie folgt implementieren:

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

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

foreach ($domTables as $table) 
{ 
    echo DOMinnerHTML($table); 
} 

Das obige ist der detaillierte Inhalt vonWie erhalte ich das innerHTML eines DOMNode mithilfe der PHP-DOM-API?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn