Methods

Create instance with parameters

__construct(array $params) 

Parameters

$params

array

mail reader specific parameters

Exceptions

\Zend\Mail\Storage\Exception\ExceptionInterface

Destructor calls close() and therefore closes the resource.

__destruct() 

Getter for has-properties.

__get(string $var) : bool

The standard has properties are: hasFolder, hasUniqueid, hasDelete, hasCreate, hasTop

The valid values for the has-properties are: - true if a feature is supported - false if a feature is not supported - null is it's not yet known or it can't be know if a feature is supported

Parameters

$var

string

property name

Exceptions

\Zend\Mail\Storage\Exception\InvalidArgumentException

Returns

boolsupported or not

Close resource for mail lib.

close() 

If you need to control, when the resource is closed. Otherwise the destructor would call this.

Countable::count()

count() : int

Returns

int

Count messages messages in current box/folder

countMessages() : int

Exceptions

\Zend\Mail\Storage\Exception\ExceptionInterface

Returns

intnumber of messages

Iterator::current()

current() : \Zend\Mail\Storage\Message

Returns

Get a full list of features supported by the specific mail lib and the server

getCapabilities() : array

Returns

arraylist of features as array(feature_name => true|false[|null])

Get a message with headers and body

getMessage(\Zend\Mail\Storage\$id $id) : \Zend\Mail\Storage\Message

Parameters

$id

\Zend\Mail\Storage\$id

int number of message

Returns

get a message number from a unique id

getNumberByUniqueId(string $id) : int

I.e. if you have a webmailer that supports deleting messages you should use unique ids as parameter and use this method to translate it to message number right before calling removeMessage()

Parameters

$id

string

unique id

Exceptions

\Zend\Mail\Storage\Exception\ExceptionInterface

Returns

intmessage number

Get raw content of message or part

getRawContent(int $id, null | array | string $part) : string

Parameters

$id

int

number of message

$part

nullarraystring

path to part or null for message content

Returns

stringraw content

Get raw header of message or part

getRawHeader(int $id, null | array | string $part, int $topLines) : string

Parameters

$id

int

number of message

$part

nullarraystring

path to part or null for message header

$topLines

int

include this many lines with header (after an empty line)

Returns

stringraw header

Get a list of messages with number and size

getSize(int $id) : int | array

Parameters

$id

int

number of message

Returns

intarraysize of given message of list with all messages as array(num => size)

get unique id for one or all messages

getUniqueId(int | null $id) : array | string

if storage does not support unique ids it's the same as the message number

Parameters

$id

intnull

message number

Exceptions

\Zend\Mail\Storage\Exception\ExceptionInterface

Returns

arraystringmessage number for given message or all messages as array

Iterator::key()

key() : int

Returns

intid of current position

Keep the resource alive.

noop() 

ArrayAccess::offsetExists()

offsetExists(int $id) : bool

Parameters

$id

int

Returns

bool

ArrayAccess::offsetGet()

offsetGet(int $id) : \Zend\Mail\Storage\Message

Parameters

$id

int

Returns

ArrayAccess::offsetSet()

offsetSet(mixed $id, mixed $value) 

Parameters

$id

mixed

$value

mixed

Exceptions

\Zend\Mail\Storage\Exception\RuntimeException

ArrayAccess::offsetUnset()

offsetUnset(int $id) : bool

Parameters

$id

int

Returns

boolsuccess

delete a message from current box/folder

removeMessage($id) 

Parameters

$id

Iterator::rewind()

rewind() 

Rewind always gets the new count from the storage. Thus if you use the interfaces and your scripts take long you should use reset() from time to time.

SeekableIterator::seek()

seek(int $pos) 

Parameters

$pos

int

Exceptions

\Zend\Mail\Storage\Exception\OutOfBoundsException

Iterator::valid()

valid() : bool

Returns

bool

 Properties

 

class capabilities with default values

$has : array

 

maximum iteration position (= message count)

$iterationMax : null | int

 

current iteration position

$iterationPos : int

 

used message class, change it in an extended class to extend the returned message class

$messageClass : string