Mail/Storage/Abstract.php
Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to [email protected] so we can send you a copy immediately.
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Package
- Zend_Mail
- Subpackage
- Storage
- Version
- $Id: Abstract.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Mail_Storage_Abstract
- Implements
- Children
- \Zend_Mail_Storage_Pop3
- \Zend_Mail_Storage_Mbox
- \Zend_Mail_Storage_Imap
- \Zend_Mail_Storage_Maildir
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
Properties

array $_has = array('uniqueid' => true, 'delete' => false, 'create' => false, 'top' => false, 'fetchPart' => true, 'flags' => false)class capabilities with default values
array('uniqueid' => true, 'delete' => false, 'create' => false, 'top' => false, 'fetchPart' => true, 'flags' => false)Details- Type
- array

null|int $_iterationMax = nullmaximum iteration position (= message count)
nullDetails- Type
- null | int
Methods

__construct(array $params) : voidCreate instance with parameters
| Name | Type | Description |
|---|---|---|
| $params | array | mail reader specific parameters |
| Exception | Description |
|---|---|
| \Zend_Mail_Storage_Exception |

__get(string $var) : boolGetter for has-properties.
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
| Name | Type | Description |
|---|---|---|
| $var | string | property name |
| Type | Description |
|---|---|
| bool | supported or not |
| Exception | Description |
|---|---|
| \Zend_Mail_Storage_Exception |

close() : nullClose resource for mail lib.
If you need to control, when the resource is closed. Otherwise the destructor would call this.
| Type | Description |
|---|---|
| null |

countMessages() : intCount messages messages in current box/folder
| Type | Description |
|---|---|
| int | number of messages |
| Exception | Description |
|---|---|
| \Zend_Mail_Storage_Exception |

current() : \Zend_Mail_MessageIterator::current()
| Type | Description |
|---|---|
| \Zend_Mail_Message | current message |

getCapabilities() : arrayGet a full list of features supported by the specific mail lib and the server
| Type | Description |
|---|---|
| array | list of features as array(featurename => true|false[|null]) |

getMessage(int $id) : \Zend_Mail_MessageGet a message with headers and body
| Name | Type | Description |
|---|---|---|
| $id | int | number of message |
| Type | Description |
|---|---|
| \Zend_Mail_Message |

getNumberByUniqueId(string $id) : intget a message number from a unique id
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()
| Name | Type | Description |
|---|---|---|
| $id | string | unique id |
| Type | Description |
|---|---|
| int | message number |
| Exception | Description |
|---|---|
| \Zend_Mail_Storage_Exception |

getRawContent(int $id, null | array | string $part = null) : stringGet raw content of message or part
| Name | Type | Description |
|---|---|---|
| $id | int | number of message |
| $part | null | array | string | path to part or null for messsage content |
| Type | Description |
|---|---|
| string | raw content |

getRawHeader(int $id, null | array | string $part = null, int $topLines = 0) : stringGet raw header of message or part
| Name | Type | Description |
|---|---|---|
| $id | int | number of message |
| $part | null | array | string | path to part or null for messsage header |
| $topLines | int | include this many lines with header (after an empty line) |
| Type | Description |
|---|---|
| string | raw header |

getSize(int $id = 0) : int | arrayGet a list of messages with number and size
| Name | Type | Description |
|---|---|---|
| $id | int | number of message |
| Type | Description |
|---|---|
| int | array | size of given message of list with all messages as array(num => size) |

getUniqueId(int | null $id = null) : array | stringget unique id for one or all messages
if storage does not support unique ids it's the same as the message number
| Name | Type | Description |
|---|---|---|
| $id | int | null | message number |
| Type | Description |
|---|---|
| array | string | message number for given message or all messages as array |
| Exception | Description |
|---|---|
| \Zend_Mail_Storage_Exception |

offsetExists(int $id) : booleanArrayAccess::offsetExists()
| Name | Type | Description |
|---|---|---|
| $id | int |
| Type | Description |
|---|---|
| boolean |

offsetGet(int $id) : \Zend_Mail_MessageArrayAccess::offsetGet()
| Name | Type | Description |
|---|---|---|
| $id | int |
| Type | Description |
|---|---|
| \Zend_Mail_Message | message object |

offsetSet(\id $id, mixed $value) : voidArrayAccess::offsetSet()
| Name | Type | Description |
|---|---|---|
| $id | \id | |
| $value | mixed |
| Exception | Description |
|---|---|
| \Zend_Mail_Storage_Exception |

offsetUnset(int $id) : booleanArrayAccess::offsetUnset()
| Name | Type | Description |
|---|---|---|
| $id | int |
| Type | Description |
|---|---|
| boolean | success |

removeMessage( $id) : nulldelete a message from current box/folder
| Name | Type | Description |
|---|---|---|
| $id |
| Type | Description |
|---|---|
| null |

rewind() : voidIterator::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.

seek(int $pos) : voidSeekableIterator::seek()
| Name | Type | Description |
|---|---|---|
| $pos | int |
| Exception | Description |
|---|---|
| \OutOfBoundsException |