Làm cách nào để nhận nguồn thư (tiêu đề, nội dung, ranh giới - tất cả cùng nhau dưới dạng văn bản thuần túy) bằng Zend_Mail (POP3).Nhận nguồn thư bằng cách sử dụng Zend_Mail
Nó trả về các phần được phân tích theo mặc định, tôi cần nguồn thư thô.
Làm cách nào để nhận nguồn thư (tiêu đề, nội dung, ranh giới - tất cả cùng nhau dưới dạng văn bản thuần túy) bằng Zend_Mail (POP3).Nhận nguồn thư bằng cách sử dụng Zend_Mail
Nó trả về các phần được phân tích theo mặc định, tôi cần nguồn thư thô.
Không có phương pháp như vậy trong Zend Thư .
Nhưng bạn có thể xem các nguồn của lớp và xem cách gửi lệnh trực tiếp đến máy chủ thư để nhận nguồn tin nhắn.
Có thể bạn có thể sử dụng các phương pháp getRawHeader()
và getRawContent()
của lớp Zend_Mail_Storage_Pop3
. Nó sẽ là đủ cho mục đích của bạn?
Some API docs (tôi không tìm thấy chúng trong Hướng dẫn tham khảo):
Nếu bạn có một trường hợp Zend_Mail, bạn có thể nhận được các nội dung được giải mã:
/** @var $message Zend_Mail */
echo $message->getBodyText()->getRawContent();
tôi làm lớp của riêng tôi cho rằng:
/**
* 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;
}
}
Và vì chỉ gọi đó là:
$transport = new My_Mailing_Transport();
$transport->send($mail);
return $transport->getMessageContent();