Exemple #1
0
 /**
  * Return literal length data located at the end of the stream.
  *
  * @return mixed  Null if no literal data found, or an array with these
  *                keys:
  *   - binary: (boolean) True if this is a literal8.
  *   - length: (integer) Length of the literal.
  */
 public function getLiteralLength()
 {
     $this->_stream->end(-1);
     if ($this->_stream->peek() === '}') {
         $literal_data = $this->_stream->getString($this->_stream->search('{', true) - 1);
         $literal_len = substr($literal_data, 2, -1);
         if (is_numeric($literal_len)) {
             return array('binary' => $literal_data[0] === '~', 'length' => intval($literal_len));
         }
     }
     return null;
 }