htmlparser/Componentsimple_html_dom.php

Website: http://sourceforge.net/projects/simplehtmldom/ Additional projects that may be used: http://sourceforge.net/projects/debugobject/ Acknowledge: Jose Solorzano (https://sourceforge.net/projects/php-html/) Contributions by: Yousuke Kumakura (Attribute filters) Vadim Voituk (Negative indexes supports of "find" method) Antcs (Constructor with automatically load contents either text or file/url)

all affected sections have comments starting with "PaperG"

Paperg - Added case insensitive testing of the value of the selector. Paperg - Added tag_start for the starting index of tags - NOTE: This works but not accurately. This tag_start gets counted AFTER \r\n have been crushed out, and after the remove_noice calls so it will not reflect the REAL position of the tag in the source, it will almost always be smaller by some amount. We use this to determine how far into the file the tag in question is. This "percentage will never be accurate as the $dom->size is the "real" number of bytes the dom was created from. but for most purposes, it's a really good estimation. Paperg - Added the forceTagsClosed to the dom constructor. Forcing tags closed is great for malformed html, but it CAN lead to parsing errors. Allow the user to tell us how much they trust the html. Paperg add the text and plaintext to the selectors for the find syntax. plaintext implies text in the innertext of a node. text implies that the tag is a text node. This allows for us to find tags based on the text they contain. Create find_ancestor_tag to see if a tag is - at any level - inside of another specific tag. Paperg: added parse_charset so that we know about the character set of the source document. NOTE: If the user's system has a routine called get_last_retrieve_url_contents_content_type availalbe, we will assume it's returning the content-type header from the last transfer or curl_exec, and we will parse that and use it in preference to any other method of charset detection.

Found infinite loop in the case of broken html in restore_noise. Rewrote to protect from that. PaperG (John Schlick) Added get_display_size for "IMG" tags.

Licensed under The MIT License Redistributions of files must retain the above copyright notice.

Classes

simple_html_dom_node simple html dom node PaperG - added ability for "find" routine to lowercase the value of the selector.
simple_html_dom simple html dom parser Paperg - in the find routine: allow us to specify that we want case insensitive testing of the value of the selector.

Constants

HDOM_TYPE_ELEMENT

HDOM_TYPE_ELEMENT

All of the Defines for the classes below.

HDOM_TYPE_COMMENT

HDOM_TYPE_COMMENT

HDOM_TYPE_TEXT

HDOM_TYPE_TEXT

HDOM_TYPE_ENDTAG

HDOM_TYPE_ENDTAG

HDOM_TYPE_ROOT

HDOM_TYPE_ROOT

HDOM_TYPE_UNKNOWN

HDOM_TYPE_UNKNOWN

HDOM_QUOTE_DOUBLE

HDOM_QUOTE_DOUBLE

HDOM_QUOTE_SINGLE

HDOM_QUOTE_SINGLE

HDOM_QUOTE_NO

HDOM_QUOTE_NO

HDOM_INFO_BEGIN

HDOM_INFO_BEGIN

HDOM_INFO_END

HDOM_INFO_END

HDOM_INFO_QUOTE

HDOM_INFO_QUOTE

HDOM_INFO_SPACE

HDOM_INFO_SPACE

HDOM_INFO_TEXT

HDOM_INFO_TEXT

HDOM_INFO_INNER

HDOM_INFO_INNER

HDOM_INFO_OUTER

HDOM_INFO_OUTER

HDOM_INFO_ENDSPACE

HDOM_INFO_ENDSPACE

DEFAULT_TARGET_CHARSET

DEFAULT_TARGET_CHARSET

DEFAULT_BR_TEXT

DEFAULT_BR_TEXT

DEFAULT_SPAN_TEXT

DEFAULT_SPAN_TEXT

MAX_FILE_SIZE

MAX_FILE_SIZE

Functions

file_get_html()

file_get_html(  $url,   $use_include_path = false,   $context = null,   $offset = -1,   $maxLen = -1,   $lowercase = true,   $forceTagsClosed = true,   $target_charset = DEFAULT_TARGET_CHARSET,   $stripRN = true,   $defaultBRText = DEFAULT_BR_TEXT,   $defaultSpanText = DEFAULT_SPAN_TEXT) 

Parameters

$url
$use_include_path
$context
$offset
$maxLen
$lowercase
$forceTagsClosed
$target_charset
$stripRN
$defaultBRText
$defaultSpanText

str_get_html()

str_get_html(  $str,   $lowercase = true,   $forceTagsClosed = true,   $target_charset = DEFAULT_TARGET_CHARSET,   $stripRN = true,   $defaultBRText = DEFAULT_BR_TEXT,   $defaultSpanText = DEFAULT_SPAN_TEXT) 

Parameters

$str
$lowercase
$forceTagsClosed
$target_charset
$stripRN
$defaultBRText
$defaultSpanText

dump_html_tree()

dump_html_tree(  $node,   $show_attr = true,   $deep) 

Parameters

$node
$show_attr
$deep