Indique si le nœud est un nœud d'élément

# tidyNode::isHtml

(PHP 5, PHP 7, PHP 8)

tidyNode::isHtml — Indique si le nœud est un nœud d'élément

### Description

public function tidyNode::isHtml(): bool

Indique si le nœud courant est un nœud d'élément, mais pas le nœud racine du document.

### Liste de paramètres

Cette fonction ne contient aucun paramètre.

### Valeurs de retour

Retourne `true` si le nœud est un nœud d'élément, mais pas le nœud racine du document, `false` sinon.

### Historique

Version | Description
--- | ---
7.3.24, 7.4.12 | Cette fonction a été corrigée pour avoir un comportement raisonnable. Auparavant, la plupart des nœuds étaient rapportés comme étant un nœud HTML.

### Exemples

Exemple #1 Extrait du code HTML depuis un document mixte

    <?php

    $html = <<< HTML
    <html><head>
    <?php echo '<title>title</title>'; ?>
    <#
      /* code JSTE */
      alert('Hello World');
    #>
    </head>
    <body>

    <?php
      // code PHP
      echo 'hello world!';
    ?>

    <%
      /* code ASP */
      response.write("Hello World!")
    %>

    <!-- Comments -->
    Hello World
    </body></html>
    Outside HTML
    HTML;

    $tidy = tidy_parse_string($html);
    $num = 0;

    get_nodes($tidy->html());

    function get_nodes($node) {
        // Vérifie si le nœud courant est du type demandé
        if($node->isHtml()) {
            echo "\n\n# Noeud Html #" . ++$GLOBALS['num'] . "\n";
            echo $node->value;
        }

        // Vérifie si le nœud courant a des enfants
        if($node->hasChildren()) {
            foreach($node->child as $child) {
                get_nodes($child);
            }
        }
    }

    ?>

L'exemple ci-dessus va afficher :

    # Noeud html #1
    <html>
    <head>
    <?php echo '<title>title</title>'; ?><#
      /* code JSTE */
      alert('Hello World');
    #>
    <title></title>
    </head>
    <body>
    <?php
      // code PHP
      echo 'hello world!';
    ?><%
      /* code ASP */
      response.write("Hello World!")
    %><!-- Comments -->
    Hello WorldOutside HTML
    </body>
    </html>

    # Noeud html #2
    <head>
    <?php echo '<title>title</title>'; ?><#
      /* code JSTE */
      alert('Hello World');
    #>
    <title></title>
    </head>

    # Noeud html #3
    <title></title>

    # Noeud html #4
    <body>
    <?php
      // code PHP
      echo 'hello world!';
    ?><%
      /* code ASP */
      response.write("Hello World!")
    %><!-- Comments -->
    Hello WorldOutside HTML
    </body>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open