tidyNode::isText

(PHP 5, PHP 7)

tidyNode::isText Indique si le noeud représente du texte (sans balise)

Description

public tidyNode::isText ( void ) : bool

Indique si le noeud parent représente du texte (sans balise).

Valeurs de retour

Retourne TRUE si le noeud représente un texte, FALSE sinon.

Exemples

Exemple #1 Extrait du texte depuis un document HTML 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 noeud courant est du type demandé
    
if($node->{"isText()) {
        echo "
\n\n# Noeud texte #" . ++$GLOBALS['num'] . "\n";
        
echo $node->value;
    }

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

?>

L'exemple ci-dessus va afficher :

# Noeud text #1
Hello World

# Noeud text #2
Outside HTML