UUEncodedPartHeaderContainer
        
        extends PartHeaderContainer
    
    
            
            in package
            
        
    
    
    
        
            Header container representing the start line of a uu-encoded part.
The line may contain a unix file mode and a filename.
Tags
Table of Contents
- $filename : string
 - $headerFactory : HeaderFactory
 - $mode : int
 - $headerMap : array<string|int, mixed>
 - $headerObjects : array<string|int, IHeader>
 - $headers : array<string|int, array<string|int, string>>
 - $nextIndex : int
 - __construct() : mixed
 - Pass a PartHeaderContainer as the second parameter. This is useful when creating a new MimePart with this PartHeaderContainer and the original container is needed for parsing and changes to the header in the part should not affect parsing.
 - add() : mixed
 - Adds the header to the collection.
 - exists() : bool
 - Returns true if the passed header exists in this collection.
 - get() : IHeader|null
 - Returns the IHeader object for the header with the given $name, or null if none exist.
 - getAll() : array<string|int, IHeader>
 - Returns all headers with the passed name.
 - getFilename() : string
 - Returns the filename included in the uuencoded 'begin' line for this part.
 - getHeaderObjects() : array<string|int, IHeader>
 - Returns an array of IHeader objects representing all headers in this collection.
 - getHeaders() : array<string|int, array<string|int, string>>
 - Returns an array of headers in this collection. Each returned element in the array is an array with the first element set to the name, and the second its value:
 - getIterator() : ArrayIterator
 - Returns an iterator to the headers in this collection. Each returned element is an array with its first element set to the header's name, and the second to its value:
 - getUnixFileMode() : int
 - Returns the file mode included in the uuencoded 'begin' line for this part.
 - remove() : bool
 - Removes the header from the collection with the passed name. Defaults to removing the first instance of the header for a collection that contains more than one with the same passed name.
 - removeAll() : bool
 - Removes all headers that match the passed name.
 - set() : mixed
 - If a header exists with the passed name, and at the passed offset if more than one exists, its value is updated.
 - setFilename() : mixed
 - Sets the filename included in the uuencoded 'begin' line.
 - setUnixFileMode() : mixed
 - Sets the unix file mode for the uuencoded 'begin' line.
 - getAllWithOriginalHeaderNameIfSet() : array<string|int, int>|null
 - Returns an array of header indexes with names that more closely match the passed $name if available: for instance if there are two headers in an email, "Content-Type" and "ContentType", and the query is for a header with the name "Content-Type", only headers that match exactly "Content-Type" would be returned.
 - getByIndex() : IHeader|null
 - Returns the header in the headers array at the passed 0-based integer index or null if one doesn't exist.
 
Properties
$filename
    protected
        string
    $filename
     = null
    
        the name of the file in the uuencoding 'header'.
$headerFactory
    protected
        HeaderFactory
    $headerFactory
    
    
        the HeaderFactory object used for created headers
$mode
    protected
        int
    $mode
     = null
    
        the unix file permission
$headerMap
    private
        array<string|int, mixed>
    $headerMap
     = []
    
        Maps header names by their "normalized" (lower-cased, non-alphanumeric characters stripped) name to an array of indexes in the $headers array. For example: $headerMap['contenttype'] = [ 1, 4 ] would indicate that the headers in $headers[1] and $headers[4] are both headers with the name 'Content-Type' or 'contENTtype'.
$headerObjects
    private
        array<string|int, IHeader>
    $headerObjects
     = []
    
        Each element is an IHeader representing the header at the same index in the $headers array. If an IHeader has not been constructed for the header at that index, the element would be set to null.
$headers
    private
        array<string|int, array<string|int, string>>
    $headers
     = []
    
        Each element in the array is an array with its first element set to the header's name, and the second its value.
$nextIndex
    private
        int
    $nextIndex
     = 0
    
        the next index to use for $headers and $headerObjects.
Methods
__construct()
Pass a PartHeaderContainer as the second parameter. This is useful when creating a new MimePart with this PartHeaderContainer and the original container is needed for parsing and changes to the header in the part should not affect parsing.
    public
                __construct(HeaderFactory $headerFactory[, PartHeaderContainer $cloneSource = null ]) : mixed
    
        Parameters
- $headerFactory : HeaderFactory
 - $cloneSource : PartHeaderContainer = null
 - 
                    
the original container to clone from
 
Return values
mixed —add()
Adds the header to the collection.
    public
                add(string $name, string $value) : mixed
    
        Parameters
- $name : string
 - $value : string
 
Return values
mixed —exists()
Returns true if the passed header exists in this collection.
    public
                exists(string $name, int $offset) : bool
    
        Parameters
- $name : string
 - $offset : int
 
Return values
bool —get()
Returns the IHeader object for the header with the given $name, or null if none exist.
    public
                get(string $name, int $offset) : IHeader|null
        An optional offset can be provided, which defaults to the first header in the collection when more than one header with the same name exists.
Note that mime headers aren't case sensitive.
Parameters
- $name : string
 - $offset : int
 
Return values
IHeader|null —getAll()
Returns all headers with the passed name.
    public
                getAll(string $name) : array<string|int, IHeader>
    
        Parameters
- $name : string
 
Return values
array<string|int, IHeader> —getFilename()
Returns the filename included in the uuencoded 'begin' line for this part.
    public
                getFilename() : string
    
    
    
        Return values
string —getHeaderObjects()
Returns an array of IHeader objects representing all headers in this collection.
    public
                getHeaderObjects() : array<string|int, IHeader>
    
    
    
        Return values
array<string|int, IHeader> —getHeaders()
Returns an array of headers in this collection. Each returned element in the array is an array with the first element set to the name, and the second its value:
    public
                getHeaders() : array<string|int, array<string|int, string>>
        [ [ 'Header-Name', 'Header Value' ], [ 'Second-Header-Name', 'Second-Header-Value' ], // etc... ]
Return values
array<string|int, array<string|int, string>> —getIterator()
Returns an iterator to the headers in this collection. Each returned element is an array with its first element set to the header's name, and the second to its value:
    public
                getIterator() : ArrayIterator
        [ 'Header-Name', 'Header Value' ]
Return values
ArrayIterator —getUnixFileMode()
Returns the file mode included in the uuencoded 'begin' line for this part.
    public
                getUnixFileMode() : int
    
    
    
        Return values
int —remove()
Removes the header from the collection with the passed name. Defaults to removing the first instance of the header for a collection that contains more than one with the same passed name.
    public
                remove(string $name, int $offset) : bool
    
        Parameters
- $name : string
 - $offset : int
 
Return values
bool —if a header was removed.
removeAll()
Removes all headers that match the passed name.
    public
                removeAll(string $name) : bool
    
        Parameters
- $name : string
 
Return values
bool —true if one or more headers were removed.
set()
If a header exists with the passed name, and at the passed offset if more than one exists, its value is updated.
    public
                set(string $name, string $value, int $offset) : mixed
        If a header with the passed name doesn't exist at the passed offset, it is created at the next available offset (offset is ignored when adding).
Parameters
- $name : string
 - $value : string
 - $offset : int
 
Return values
mixed —setFilename()
Sets the filename included in the uuencoded 'begin' line.
    public
                setFilename(string $filename) : mixed
    
        Parameters
- $filename : string
 
Return values
mixed —setUnixFileMode()
Sets the unix file mode for the uuencoded 'begin' line.
    public
                setUnixFileMode(int $mode) : mixed
    
        Parameters
- $mode : int
 
Return values
mixed —getAllWithOriginalHeaderNameIfSet()
Returns an array of header indexes with names that more closely match the passed $name if available: for instance if there are two headers in an email, "Content-Type" and "ContentType", and the query is for a header with the name "Content-Type", only headers that match exactly "Content-Type" would be returned.
    private
                getAllWithOriginalHeaderNameIfSet(string $name) : array<string|int, int>|null
    
        Parameters
- $name : string
 
Return values
array<string|int, int>|null —getByIndex()
Returns the header in the headers array at the passed 0-based integer index or null if one doesn't exist.
    private
                getByIndex(int $index) : IHeader|null
    
        Parameters
- $index : int