PathHeader
extends AbstractHeader
in package
A Path Header, such a Return-Path (one address).
Tags
Table of Contents
Constants
- 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
Methods
- __construct() : mixed
- getAddress() : Address
- getBody() : mixed
- Gets the body.
- getBodyAsString() : string
- Gets the header's body, prepared for folding into a final header value.
- getCharset() : string|null
- getLanguage() : string|null
- getMaxLineLength() : int
- getName() : string
- setAddress() : mixed
- setBody() : mixed
- Sets the body.
- 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
- 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
getAddress()
public
getAddress() : Address
Return values
AddressgetBody()
Gets the body.
public
getBody() : mixed
The return type depends on the Header concrete class.
getBodyAsString()
Gets the header's body, prepared for folding into a final header value.
public
getBodyAsString() : string
This is not necessarily RFC 2822 compliant since folding white space is not added at this stage (see for that).
Return values
stringgetCharset()
public
getCharset() : string|null
Return values
string|nullgetLanguage()
public
getLanguage() : string|null
Return values
string|nullgetMaxLineLength()
public
getMaxLineLength() : int
Return values
intgetName()
public
getName() : string
Return values
stringsetAddress()
public
setAddress(Address $address) : mixed
Parameters
- $address : Address
setBody()
Sets the body.
public
setBody(Address $body) : mixed
Parameters
- $body : Address
Tags
setCharset()
public
setCharset(string $charset) : mixed
Parameters
- $charset : string
setLanguage()
Set the language used in this Header.
public
setLanguage(string $lang) : mixed
For example, for US English, 'en-us'.
Parameters
- $lang : string
setMaxLineLength()
public
setMaxLineLength(int $lineLength) : mixed
Parameters
- $lineLength : int
toString()
Gets this Header rendered as a compliant string.
public
toString() : string
Return values
stringcreatePhrase()
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
stringencodeWords()
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
stringgenerateTokenLines()
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 = 0 ]) : string
Parameters
- $token : string
- $firstLineOffset : int = 0
Return values
stringtokenNeedsEncoding()
protected
tokenNeedsEncoding(string $token) : bool
Parameters
- $token : string
Return values
booltoTokens()
Generate a list of all tokens in the final header.
protected
toTokens([string|null $string = null ]) : array<string|int, mixed>
Parameters
- $string : string|null = 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>