Blame view

dompdf/lib/html5lib/Parser.php 1.13 KB
670b6d6f8   tuan   2016/09/22 - Copy...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  <?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();
      }
  }