Пример #1
0
 /**
  * Get all headers
  *
  * The returned headers are as saved internally. All names are lowercased. The value is a string or an array
  * if a header with the same name occurs more than once.
  *
  * @return array headers as array(name => value)
  */
 public function getHeaders()
 {
     if ($this->_headers === null) {
         if (!$this->_mail) {
             $this->_headers = array();
         } else {
             $part = $this->_mail->getRawHeader($this->_messageNum);
             $body = null;
             // "Declare" variable since it's passed by reference
             Mime\Decode::splitMessage($part, $this->_headers, $body);
         }
     }
     return $this->_headers;
 }
Пример #2
0
 /**
  * Special handling for hasTop and hasUniqueid. The headers of the first message is
  * retrieved if Top wasn't needed/tried yet.
  *
  * @see \Zend\Mail\Storage\Abstract::__get()
  * @param  string $var
  * @return string
  * @throws \Zend\Mail\Storage\Exception
  */
 public function __get($var)
 {
     $result = parent::__get($var);
     if ($result !== null) {
         return $result;
     }
     if (strtolower($var) == 'hastop') {
         if ($this->_protocol->hasTop === null) {
             // need to make a real call, because not all server are honest in their capas
             try {
                 $this->_protocol->top(1, 0, false);
             } catch (Mail\Exception $e) {
                 // ignoring error
             }
         }
         $this->_has['top'] = $this->_protocol->hasTop;
         return $this->_protocol->hasTop;
     }
     if (strtolower($var) == 'hasuniqueid') {
         $id = null;
         try {
             $id = $this->_protocol->uniqueid(1);
         } catch (Mail\Exception $e) {
             // ignoring error
         }
         $this->_has['uniqueid'] = $id ? true : false;
         return $this->_has['uniqueid'];
     }
     return $result;
 }