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;
      }
docs: 次の文字の Unicode 符号点を返します.
  解析対象の文字列が途中で切れている場合
  (例えば次の 1 文字が 3 バイトであるにも関わらず, 解析対象の文字列が残り 2 バイトしかない等)
  足りないバイト列を 0x80 で補います.
  
  @param  int $byte 現在の文字のはじめの 1 byte
  @return int 現在の文字の Unicode 符号点