MailboxHeader
extends AbstractHeader
in package
A Mailbox MIME Header for something like Sender (one named address).
Tags
Table of Contents
- PHRASE_PATTERN = '(?:(?:(?:(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?[a-zA-Z0-9!#\\$%&\'\\*\\+\\-\\/=\\?\\^_`\\{\\}\\|~]+(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?)|(?:(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?"((?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21\\x23-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?"(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?))+?)'
- $address : mixed
- $charset : mixed
- $encoder : mixed
- $lang : mixed
- $lineLength : mixed
- $name : mixed
- __construct() : mixed
- getAddress() : Address
- getBody() : Address
- getBodyAsString() : string
- getCharset() : string|null
- getLanguage() : string|null
- getMaxLineLength() : int
- getName() : string
- setAddress() : mixed
- setBody() : mixed
- setCharset() : mixed
- setLanguage() : mixed
- Set the language used in this Header.
- setMaxLineLength() : mixed
- toString() : string
- Gets this Header rendered as a compliant string.
- createPhrase() : string
- Produces a compliant, formatted RFC 2822 'phrase' based on the string given.
- encodeWords() : string
- Encode needed word tokens within a string of input.
- generateTokenLines() : array<string|int, string>
- Generates tokens from the given string which include CRLF as individual tokens.
- getEncodableWordTokens() : array<string|int, string>
- Splits a string into tokens in blocks of words which can be encoded quickly.
- getTokenAsEncodedWord() : string
- Get a token as an encoded word for safe insertion into headers.
- tokenNeedsEncoding() : bool
- Redefine the encoding requirements for an address.
- toTokens() : array<string|int, mixed>
- Generate a list of all tokens in the final header.
- tokensToString() : string
- Takes an array of tokens which appear in the header and turns them into an RFC 2822 compliant string, adding FWSP where needed.
Constants
PHRASE_PATTERN
public
mixed
PHRASE_PATTERN
= '(?:(?:(?:(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?[a-zA-Z0-9!#\\$%&\'\\*\\+\\-\\/=\\?\\^_`\\{\\}\\|~]+(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?)|(?:(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?"((?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21\\x23-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?"(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))*(?:(?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?(\\((?:(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])|(?:(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x19\\x7F]|[\\x21-\\x27\\x2A-\\x5B\\x5D-\\x7E])|(?:\\[\\x00-\\x08\\x0B\\x0C\\x0E-\\x7F])|(?1)))*(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])?\\)))|(?:(?:[ \\t]*(?:\\r\\n))?[ \\t])))?))+?)'
Properties
$address
private
mixed
$address
$charset
private
mixed
$charset
= 'utf-8'
$encoder
private
static mixed
$encoder
$lang
private
mixed
$lang
$lineLength
private
mixed
$lineLength
= 76
$name
private
mixed
$name
Methods
__construct()
public
__construct(string $name, Address $address) : mixed
Parameters
- $name : string
- $address : Address
Return values
mixed —getAddress()
public
getAddress() : Address
Return values
Address —getBody()
public
getBody() : Address
Tags
Return values
Address —getBodyAsString()
public
getBodyAsString() : string
Return values
string —getCharset()
public
getCharset() : string|null
Return values
string|null —getLanguage()
public
getLanguage() : string|null
Return values
string|null —getMaxLineLength()
public
getMaxLineLength() : int
Return values
int —getName()
public
getName() : string
Return values
string —setAddress()
public
setAddress(Address $address) : mixed
Parameters
- $address : Address
Tags
Return values
mixed —setBody()
public
setBody(Address $body) : mixed
Parameters
- $body : Address
Tags
Return values
mixed —setCharset()
public
setCharset(string $charset) : mixed
Parameters
- $charset : string
Return values
mixed —setLanguage()
Set the language used in this Header.
public
setLanguage(string $lang) : mixed
For example, for US English, 'en-us'.
Parameters
- $lang : string
Return values
mixed —setMaxLineLength()
public
setMaxLineLength(int $lineLength) : mixed
Parameters
- $lineLength : int
Return values
mixed —toString()
Gets this Header rendered as a compliant string.
public
toString() : string
Return values
string —createPhrase()
Produces a compliant, formatted RFC 2822 'phrase' based on the string given.
protected
createPhrase(HeaderInterface $header, string $string, string $charset[, bool $shorten = false ]) : string
Parameters
- $header : HeaderInterface
- $string : string
-
as displayed
- $charset : string
- $shorten : bool = false
-
the first line to make remove for header name
Return values
string —encodeWords()
Encode needed word tokens within a string of input.
protected
encodeWords(HeaderInterface $header, string $input[, int $usedLength = -1 ]) : string
Parameters
- $header : HeaderInterface
- $input : string
- $usedLength : int = -1
Return values
string —generateTokenLines()
Generates tokens from the given string which include CRLF as individual tokens.
protected
generateTokenLines(string $token) : array<string|int, string>
Parameters
- $token : string
Return values
array<string|int, string> —getEncodableWordTokens()
Splits a string into tokens in blocks of words which can be encoded quickly.
protected
getEncodableWordTokens(string $string) : array<string|int, string>
Parameters
- $string : string
Return values
array<string|int, string> —getTokenAsEncodedWord()
Get a token as an encoded word for safe insertion into headers.
protected
getTokenAsEncodedWord(string $token, int $firstLineOffset) : string
Parameters
- $token : string
- $firstLineOffset : int
Return values
string —tokenNeedsEncoding()
Redefine the encoding requirements for an address.
protected
tokenNeedsEncoding(string $token) : bool
All "specials" must be encoded as the full header value will not be quoted
Parameters
- $token : string
Tags
Return values
bool —toTokens()
Generate a list of all tokens in the final header.
protected
toTokens([string $string = null ]) : array<string|int, mixed>
Parameters
- $string : string = null
Return values
array<string|int, mixed> —tokensToString()
Takes an array of tokens which appear in the header and turns them into an RFC 2822 compliant string, adding FWSP where needed.
private
tokensToString(array<string|int, string> $tokens) : string
Parameters
- $tokens : array<string|int, string>