Documentation

Swift_Mime_Headers_IdentificationHeader extends Swift_Mime_Headers_AbstractHeader
in package

An ID MIME Header for something like Message-ID or Content-ID.

Tags
author

Chris Corbyn

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])))?))+?)'
$addressEncoder  : mixed
$cachedValue  : string
The value of this Header, cached.
$charset  : string
The character set of the text in this Header.
$emailValidator  : EmailValidator
The strict EmailValidator.
$encoder  : Swift_Encoder
The Encoder used to encode this Header.
$ids  : array<string|int, string>
The IDs used in the value of this Header.
$lang  : string
The language used in this Header.
$lineLength  : int
The maximum length of a line in the header.
$name  : string
The name of this Header.
__construct()  : mixed
Creates a new IdentificationHeader with the given $name and $id.
__toString()  : string
Returns a string representation of this object.
getCharset()  : string
Get the character set used in this Header.
getEncoder()  : Swift_Mime_HeaderEncoder
Get the encoder used for encoding this Header.
getFieldBody()  : string
Get the string value of the body in this Header.
getFieldBodyModel()  : array<string|int, mixed>
Get the model for the field body.
getFieldName()  : string
Get the name of this header (e.g. charset).
getFieldType()  : int
Get the type of Header that this instance represents.
getId()  : string
Get the ID used in the value of this Header.
getIds()  : array<string|int, string>
Get the list of IDs used in this Header.
getLanguage()  : string
Get the language used in this Header.
getMaxLineLength()  : int
Get the maximum permitted length of lines in this Header.
setCharset()  : mixed
Set the character set used in this Header.
setEncoder()  : mixed
Set the encoder used for encoding the header.
setFieldBodyModel()  : mixed
Set the model for the field body.
setId()  : mixed
Set the ID used in the value of this header.
setIds()  : mixed
Set a collection of IDs to use in the value of this Header.
setLanguage()  : mixed
Set the language used in this Header.
setMaxLineLength()  : mixed
Set the maximum length of lines in the header (excluding EOL).
toString()  : string
Get this Header rendered as a RFC 2822 compliant string.
clearCachedValueIf()  : mixed
Clear the cached value if $condition is met.
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.
getCachedValue()  : string
Get the value in the cache.
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.
setCachedValue()  : mixed
Set a value into the cache.
setFieldName()  : mixed
Set the name of this Header field.
tokenNeedsEncoding()  : bool
Test if a token needs to be encoded or not.
toTokens()  : array<string|int, mixed>
Generate a list of all tokens in the final header.
assertValidId()  : mixed
Throws an Exception if the id passed does not comply with RFC 2822.
escapeSpecials()  : string
Escape special characters in a string (convert to quoted-pairs).
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

$cachedValue

The value of this Header, cached.

private string $cachedValue = ull

$charset

The character set of the text in this Header.

private string $charset = 'utf-8'

$ids

The IDs used in the value of this Header.

private array<string|int, string> $ids = []

This may hold multiple IDs or just a single ID.

$lineLength

The maximum length of a line in the header.

private int $lineLength = 78

Methods

__toString()

Returns a string representation of this object.

public __toString() : string
Tags
see
toString()
Return values
string

getCharset()

Get the character set used in this Header.

public getCharset() : string
Return values
string

getFieldBody()

Get the string value of the body in this Header.

public getFieldBody() : string

This is not necessarily RFC 2822 compliant since folding white space will not be added at this stage (see toString() for that).

Tags
see
toString()
throws
Swift_RfcComplianceException
Return values
string

getFieldBodyModel()

Get the model for the field body.

public getFieldBodyModel() : array<string|int, mixed>

This method returns an array of IDs

Return values
array<string|int, mixed>

getFieldName()

Get the name of this header (e.g. charset).

public getFieldName() : string
Return values
string

getFieldType()

Get the type of Header that this instance represents.

public getFieldType() : int
Tags
see

TYPE_TEXT, TYPE_PARAMETERIZED, TYPE_MAILBOX

see

TYPE_DATE, TYPE_ID, TYPE_PATH

Return values
int

getId()

Get the ID used in the value of this Header.

public getId() : string

If multiple IDs are set only the first is returned.

Return values
string

getIds()

Get the list of IDs used in this Header.

public getIds() : array<string|int, string>
Return values
array<string|int, string>

getLanguage()

Get the language used in this Header.

public getLanguage() : string
Return values
string

getMaxLineLength()

Get the maximum permitted length of lines in this Header.

public getMaxLineLength() : int
Return values
int

setCharset()

Set the character set used in this Header.

public setCharset(string $charset) : mixed
Parameters
$charset : string
Return values
mixed

setFieldBodyModel()

Set the model for the field body.

public setFieldBodyModel(mixed $model) : mixed

This method takes a string ID, or an array of IDs.

Parameters
$model : mixed
Tags
throws
Swift_RfcComplianceException
Return values
mixed

setIds()

Set a collection of IDs to use in the value of this Header.

public setIds(array<string|int, string> $ids) : mixed
Parameters
$ids : array<string|int, string>
Tags
throws
Swift_RfcComplianceException
Return values
mixed

setLanguage()

Set the language used in this Header.

public setLanguage(string $lang) : mixed

For example, for US English, 'en-us'. This can be unspecified.

Parameters
$lang : string
Return values
mixed

setMaxLineLength()

Set the maximum length of lines in the header (excluding EOL).

public setMaxLineLength(int $lineLength) : mixed
Parameters
$lineLength : int
Return values
mixed

clearCachedValueIf()

Clear the cached value if $condition is met.

protected clearCachedValueIf(bool $condition) : mixed
Parameters
$condition : bool
Return values
mixed

createPhrase()

Produces a compliant, formatted RFC 2822 'phrase' based on the string given.

protected createPhrase(Swift_Mime_Header $header, string $string, string $charset[, Swift_Mime_HeaderEncoder $encoder = null ][, bool $shorten = false ]) : string
Parameters
$header : Swift_Mime_Header
$string : string

as displayed

$charset : string

of the text

$encoder : Swift_Mime_HeaderEncoder = null
$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(Swift_Mime_Header $header, string $input[, string $usedLength = -1 ]) : string
Parameters
$header : Swift_Mime_Header
$input : string
$usedLength : string = -1

optional

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>

getCachedValue()

Get the value in the cache.

protected getCachedValue() : string
Return values
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

token to encode

$firstLineOffset : int

optional

Return values
string

setCachedValue()

Set a value into the cache.

protected setCachedValue(string $value) : mixed
Parameters
$value : string
Return values
mixed

setFieldName()

Set the name of this Header field.

protected setFieldName(string $name) : mixed
Parameters
$name : string
Return values
mixed

tokenNeedsEncoding()

Test if a token needs to be encoded or not.

protected tokenNeedsEncoding(string $token) : bool
Parameters
$token : string
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

The string to tokenize

Return values
array<string|int, mixed>

An array of tokens as strings

escapeSpecials()

Escape special characters in a string (convert to quoted-pairs).

private escapeSpecials(string $token[, array<string|int, string> $include = [] ]) : string
Parameters
$token : string
$include : array<string|int, string> = []

additional chars to escape

Return values
string

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>
Return values
string

Search results