src/Peach/DF/Utf8Context.php
private function nextMultibyteChar($byte)
    {
        $count  = $this->getCharCount($byte);
        $next   = substr($this->text, $this->index, $count);
        $length = strlen($next);
        if ($length < $count) {
            $next .= str_repeat(chr(0x80), $count - $length);
        }
        
        $code = $this->getUnicodeNumber($next);
        if ($code === null) {
            $this->index++;
            return $this->next();
        }
        $this->index += $length;
        return $code;
    }
private function nextMultibyteChar($byte)
    {
        $count  = $this->getCharCount($byte);
        $next   = substr($this->text, $this->index, $count);
        $length = strlen($next);
        if ($length < $count) {
            $next .= str_repeat(chr(0x80), $count - $length);
        }
        
        $code = $this->getUnicodeNumber($next);
        if ($code === null) {
            $this->index++;
            return $this->next();
        }
        $this->index += $length;
        return $code;
    }
次の文字の Unicode 符号点を返します.
解析対象の文字列が途中で切れている場合
(例えば次の 1 文字が 3 バイトであるにも関わらず, 解析対象の文字列が残り 2 バイトしかない等)
足りないバイト列を 0x80 で補います.

@param  int $byte 現在の文字のはじめの 1 byte
@return int 現在の文字の Unicode 符号点