2011-08-24 5 views
7

Zend_Mail (POP3)을 사용하여 메일 소스 (헤더, 본문, 경계 - 모두 한꺼번에 일반 텍스트)를 가져 오는 방법은 무엇입니까?Zend_Mail을 사용하여 메일 소스 가져 오기

기본적으로 구문 분석 된 부분을 반환하므로 원본 메시지 소스가 필요합니다.

답변

2

을 .

그러나 클래스 소스를보고 메시지 소스를 가져 오기 위해 메일 서버에 직접 명령을 보내는 방법을 살펴보십시오.

/** 
* Transport mail layer for retrieve content of message 
* 
* @author Petr Kovar 
*/ 
class My_Mailing_Transport extends Zend_Mail_Transport_Abstract{ 

    protected $_messageContent; 

    /** 
    * Only assign message to some variable 
    */ 
    protected function _sendMail(){ 

     $this->_messageContent = $this->header . Zend_Mime::LINEEND . $this->body; 
    } 

    /** 
    * Get source code of message 
    * 
    * @return string 
    */ 
    public function getMessageContent(){ 
     return $this->_messageContent; 
    } 

} 

만 이상의

그 전화 :

$transport = new My_Mailing_Transport(); 
$transport->send($mail); 
return $transport->getMessageContent(); 
1

Zend_Mail_Storage_Pop3 클래스의 getRawHeader()getRawContent() 메서드를 사용할 수 있습니다. 그것은 당신의 목적에 충분할 것입니까?

Some API docs (I은 참조 설명서에서 찾을하지 않았다) :

1

당신이 Zend_Mail 인스턴스가있는 경우, 디코딩 된 콘텐츠를 얻을 수 있습니다 :

젠드 메일에서 그런 방법이 없습니다
/** @var $message Zend_Mail */ 
echo $message->getBodyText()->getRawContent(); 
1

나는 그것에 대해 내 자신의 계층을 만든
관련 문제