diff options
author | Mike Macgirvin <mike@macgirvin.com> | 2010-07-01 16:48:07 -0700 |
---|---|---|
committer | Mike Macgirvin <mike@macgirvin.com> | 2010-07-01 16:48:07 -0700 |
commit | 6348e70daa113e8b3203de8fbc919d08c90d972e (patch) | |
tree | 1bc3dd3bc85fe6136411086785cf6753960e22f9 /library/HTML5/Parser.php | |
download | volse-hubzilla-6348e70daa113e8b3203de8fbc919d08c90d972e.tar.gz volse-hubzilla-6348e70daa113e8b3203de8fbc919d08c90d972e.tar.bz2 volse-hubzilla-6348e70daa113e8b3203de8fbc919d08c90d972e.zip |
Initial checkin
Diffstat (limited to 'library/HTML5/Parser.php')
-rw-r--r-- | library/HTML5/Parser.php | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/library/HTML5/Parser.php b/library/HTML5/Parser.php new file mode 100644 index 000000000..5f9ca560e --- /dev/null +++ b/library/HTML5/Parser.php @@ -0,0 +1,36 @@ +<?php + +require_once dirname(__FILE__) . '/Data.php'; +require_once dirname(__FILE__) . '/InputStream.php'; +require_once dirname(__FILE__) . '/TreeBuilder.php'; +require_once dirname(__FILE__) . '/Tokenizer.php'; + +/** + * Outwards facing interface for HTML5. + */ +class HTML5_Parser +{ + /** + * Parses a full HTML document. + * @param $text HTML text to parse + * @param $builder Custom builder implementation + * @return Parsed HTML as DOMDocument + */ + static public function parse($text, $builder = null) { + $tokenizer = new HTML5_Tokenizer($text, $builder); + $tokenizer->parse(); + return $tokenizer->save(); + } + /** + * Parses an HTML fragment. + * @param $text HTML text to parse + * @param $context String name of context element to pretend parsing is in. + * @param $builder Custom builder implementation + * @return Parsed HTML as DOMDocument + */ + static public function parseFragment($text, $context = null, $builder = null) { + $tokenizer = new HTML5_Tokenizer($text, $builder); + $tokenizer->parseFragment($context); + return $tokenizer->save(); + } +} |