PHP 8.1.0 Released!

tidyNode::isHtml

(PHP 5, PHP 7, PHP 8)

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

Description

public 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 était rapporté 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>

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top