©
本文档使用
php中文网手册 发布
(PHP 5 >= 5.0.1)
tidyNode::isHtml — Checks if a node is part of a HTML document
Tells if the node is part of HTML document.
Returns TRUE if the node is part of a HTML document, FALSE otherwise.
Example #1 Extract HTML code from a mixed HTML document
<?php
$html = <<< HTML
<html><head>
<?php echo '<title>title</title>'; ?>
<#
alert('Hello World');
#>
</head>
<body>
<?php
// PHP code
echo 'hello world!';
?>
<%
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 ) {
// check if the current node is of requested type
if( $node -> isHtml ()) {
echo "\n\n# html node #" . ++ $GLOBALS [ 'num' ] . "\n" ;
echo $node -> value ;
}
// check if the current node has childrens
if( $node -> hasChildren ()) {
foreach( $node -> child as $child ) {
get_nodes ( $child );
}
}
}
?> 以上例程会输出:
# html node #1
<html>
<head>
<?php echo '<title>title</title>'; ?><#
alert('Hello World');
#>
<title></title>
</head>
<body>
<?php
// PHP code
echo 'hello world!';
?><%
response.write("Hello World!")
%><!-- Comments -->
Hello WorldOutside HTML
</body>
</html># html node #2
<head>
<?php echo '<title>title</title>'; ?><#
alert('Hello World');
#>
<title></title>
</head># html node #3
<?php echo '<title>title</title>'; ?># html node #4
<#
alert('Hello World');
#># html node #5
<title></title># html node #6
<body>
<?php
// PHP code
echo 'hello world!';
?><%
response.write("Hello World!")
%><!-- Comments -->
Hello WorldOutside HTML
</body># html node #7
<?php
// PHP code
echo 'hello world!';
?># html node #8
<%
response.write("Hello World!")
%># html node #9
<!-- Comments --># html node #10
Hello World# html node #11
Outside HTML
Note:
This function was named tidy_node::is_html() in PHP 4/Tidy 1.