Headers.php
TLDR
The Headers.php
file in the Illuminate\Mail\Mailables
namespace defines a class named Headers
. This class is responsible for representing the headers of an email message. It provides methods for setting and accessing the message ID, referenced message IDs, and text headers. The class also includes a method to convert the referenced message IDs to a formatted string.
Classes
Headers
The Headers
class represents the headers of an email message. It includes the following properties:
-
$messageId
: The message's message ID. -
$references
: The message IDs that are referenced by the message. -
$text
: The message's text headers.
The class provides the following methods:
-
__construct(string $messageId = null, array $references = [], array $text = [])
: Creates a new instance of headers for a message. The$messageId
,$references
, and$text
arguments are optional and can be specified as named arguments. -
messageId(string $messageId)
: Sets the message ID. -
references(array $references)
: Sets the message IDs referenced by this message. -
text(array $text)
: Sets the headers for this message. -
referencesString(): string
: Returns the references header as a formatted string.
<?php
namespace Illuminate\Mail\Mailables;
use Illuminate\Support\Str;
use Illuminate\Support\Traits\Conditionable;
class Headers
{
use Conditionable;
/**
* The message's message ID.
*
* @var string|null
*/
public $messageId;
/**
* The message IDs that are referenced by the message.
*
* @var array
*/
public $references;
/**
* The message's text headers.
*
* @var array
*/
public $text;
/**
* Create a new instance of headers for a message.
*
* @param string|null $messageId
* @param array $references
* @param array $text
* @return void
*
* @named-arguments-supported
*/
public function __construct(string $messageId = null, array $references = [], array $text = [])
{
$this->messageId = $messageId;
$this->references = $references;
$this->text = $text;
}
/**
* Set the message ID.
*
* @param string $messageId
* @return $this
*/
public function messageId(string $messageId)
{
$this->messageId = $messageId;
return $this;
}
/**
* Set the message IDs referenced by this message.
*
* @param array $references
* @return $this
*/
public function references(array $references)
{
$this->references = array_merge($this->references, $references);
return $this;
}
/**
* Set the headers for this message.
*
* @param array $references
* @return $this
*/
public function text(array $text)
{
$this->text = array_merge($this->text, $text);
return $this;
}
/**
* Get the references header as a string.
*
* @return string
*/
public function referencesString(): string
{
return collect($this->references)->map(function ($messageId) {
return Str::finish(Str::start($messageId, '<'), '>');
})->implode(' ');
}
}