Maison > développement back-end > tutoriel php > Comment obtenir le innerHTML d'un DOMNode à l'aide de l'API PHP DOM ?

Comment obtenir le innerHTML d'un DOMNode à l'aide de l'API PHP DOM ?

Susan Sarandon
Libérer: 2024-12-18 06:38:10
original
741 Les gens l'ont consulté

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

Comment accéder à l'élément DOM InnerHTML dans l'API PHP DOM

Dans l'implémentation PHP DOM, l'accès au innerHTML d'un DOMNode nécessite une approche spécifique . Voici une solution fiable et comment elle se compare aux autres options.

L'API PHP DOM ne fournit pas de fonction dédiée pour récupérer le HTML interne. Contrairement à JavaScript, où innerHTML est une propriété d'un élément, dans PHP DOM, vous devez parcourir manuellement les enfants du nœud pour construire le innerHTML.

Variante mise à jour avec la note utilisateur manuelle PHP #89718

La note de l'utilisateur suggère une variante mise à jour pour construire le innerHTML :

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

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

    return $innerHTML; 
} 
Copier après la connexion

Exemple d'utilisation

En supposant que vous ayez une chaîne HTML stockée dans $html_string, voici comment implémenter cette fonction :

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

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

foreach ($domTables as $table) 
{ 
    echo DOMinnerHTML($table); 
} 
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal