mirror of
https://github.com/retailcrm/Fetch.git
synced 2024-11-26 04:36:03 +03:00
added new function to fetch raw headers from mail
This commit is contained in:
parent
6a6d909c17
commit
c8c61d017e
@ -43,6 +43,13 @@ class Message
|
|||||||
*/
|
*/
|
||||||
protected $imapStream;
|
protected $imapStream;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This as an object which contains raw header information for the message.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
protected $rawHeaders;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This as an object which contains header information for the message.
|
* This as an object which contains header information for the message.
|
||||||
*
|
*
|
||||||
@ -291,7 +298,23 @@ class Message
|
|||||||
return $this->messageOverview;
|
return $this->messageOverview;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* This function returns an object containing the raw headers of the message.
|
||||||
|
*
|
||||||
|
* @param bool $forceReload
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getRawHeaders($forceReload = false)
|
||||||
|
{
|
||||||
|
if ($forceReload || !isset($this->rawHeaders)) {
|
||||||
|
// raw headers (since imap_headerinfo doesn't use the unique id)
|
||||||
|
$this->rawHeaders = imap_fetchheader($this->imapStream, $this->uid, FT_UID);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->rawHeaders;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
* This function returns an object containing the headers of the message. This is done by taking the raw headers
|
* This function returns an object containing the headers of the message. This is done by taking the raw headers
|
||||||
* and running them through the imap_rfc822_parse_headers function. The results are only retrieved from the server
|
* and running them through the imap_rfc822_parse_headers function. The results are only retrieved from the server
|
||||||
* once unless passed true as a parameter.
|
* once unless passed true as a parameter.
|
||||||
@ -303,7 +326,7 @@ class Message
|
|||||||
{
|
{
|
||||||
if ($forceReload || !isset($this->headers)) {
|
if ($forceReload || !isset($this->headers)) {
|
||||||
// raw headers (since imap_headerinfo doesn't use the unique id)
|
// raw headers (since imap_headerinfo doesn't use the unique id)
|
||||||
$rawHeaders = imap_fetchheader($this->imapStream, $this->uid, FT_UID);
|
$rawHeaders = $this->getRawHeaders();
|
||||||
|
|
||||||
// convert raw header string into a usable object
|
// convert raw header string into a usable object
|
||||||
$headerObject = imap_rfc822_parse_headers($rawHeaders);
|
$headerObject = imap_rfc822_parse_headers($rawHeaders);
|
||||||
|
Loading…
Reference in New Issue
Block a user