src/PowerTools/HTML5/Parser/Tokenizer.php
protected function comment() {
        $tok = $this->scanner->current();
        $comment = '';

        // <!-->. Emit an empty comment because 8.2.4.46 says to.
        if ($tok == '>') {
            // Parse error. Emit the comment token.
            $this->parseError("Expected comment data, got '>'");
            $this->events->comment('');
            $this->scanner->next();
            return true;
        }

        // Replace NULL with the replacement char.
        if ($tok == "\0") {
            $tok = HTML5_Parser_UTF8Utils::FFFD;
        }
        while (!$this->isCommentEnd()) {
            $comment .= $tok;
            $tok = $this->scanner->next();
        }

        $this->events->comment($comment);
        $this->scanner->next();
        return true;
    }
protected function comment() {
        $tok = $this->scanner->current();
        $comment = '';

        // <!-->. Emit an empty comment because 8.2.4.46 says to.
        if ($tok == '>') {
            // Parse error. Emit the comment token.
            $this->parseError("Expected comment data, got '>'");
            $this->events->comment('');
            $this->scanner->next();
            return true;
        }

        // Replace NULL with the replacement char.
        if ($tok == "\0") {
            $tok = HTML5_Parser_UTF8Utils::FFFD;
        }
        while (!$this->isCommentEnd()) {
            $comment .= $tok;
            $tok = $this->scanner->next();
        }

        $this->events->comment($comment);
        $this->scanner->next();
        return true;
    }
protected function comment ( ) { $ tok = $ this -> scanner -> current ( ) ; $ comment = '' ; // <!-->. Emit an empty comment because 8.2.4.46 says to. if ( $ tok == '>' ) { // Parse error. Emit the comment token. $ this -> parseError ( "Expected comment data, got '>'" ) ; $ this -> events -> comment ( '' ) ; $ this -> scanner -> next ( ) ; return true ; } // Replace NULL with the replacement char. if ( $ tok == "\0" ) { $ tok = HTML5_Parser_UTF8Utils :: FFFD ; } while ( ! $ this -> isCommentEnd ( ) ) { $ comment .= $ tok ; $ tok = $ this -> scanner -> next ( ) ; } $ this -> events -> comment ( $ comment ) ; $ this -> scanner -> next ( ) ; return true ; }
Read a comment.

Expects the first tok to be inside of the comment.
Read a comment .