Mail/Protocol/Smtp.php
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 license@zend.com 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
- Protocol
- Version
- $Id: Smtp.php 24593 2012-01-05 20:35:02Z matthew $
\Zend_Mail_Protocol_Smtp
Minimum implementation according to RFC2821: EHLO, MAIL FROM, RCPT TO, DATA, RSET, NOOP, QUIT
- Parent(s)
- \Zend_Mail_Protocol_Abstract
- Children
- \Zend_Mail_Protocol_Smtp_Auth_Crammd5
- \Zend_Mail_Protocol_Smtp_Auth_Plain
- \Zend_Mail_Protocol_Smtp_Auth_Login
- Category
- Zend
- Copyright
- Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- License
- New BSD License
- Version
- $Id: Abstract.php 24593 2012-01-05 20:35:02Z matthew $
Constants
TIMEOUT_CONNECTION
= 30- Inherited_from
- \Zend_Mail_Protocol_Abstract::TIMEOUT_CONNECTION
Properties

\unknown_type $_auth = falsefalseDetails- Type
- \unknown_type

\unknown_type $_data = nullnullDetails- Type
- \unknown_type

\unknown_type $_helo = falsefalseDetails- Type
- \unknown_type

string $_host- Type
- string
- Inherited_from
- \Zend_Mail_Protocol_Abstract::$$_host

array $_log = array()array()Details- Type
- array
- Inherited_from
- \Zend_Mail_Protocol_Abstract::$$_log

\unknown_type $_mail = falsefalseDetails- Type
- \unknown_type

integer $_maximumLog = 6464Details- Type
- integer
- Inherited_from
- \Zend_Mail_Protocol_Abstract::$$_maximumLog

\unknown_type $_rcpt = falsefalseDetails- Type
- \unknown_type

array $_response- Type
- array
- Inherited_from
- \Zend_Mail_Protocol_Abstract::$$_response

boolean $_sess = falsefalseDetails- Type
- boolean

resource $_template = '%d%s''%d%s'Details- Type
- resource
- Inherited_from
- \Zend_Mail_Protocol_Abstract::$$_template

\Zend_Validate $_validHost- Type
- \Zend_Validate
- Inherited_from
- \Zend_Mail_Protocol_Abstract::$$_validHost
Methods

__construct(string $host = '127.0.0.1', integer $port = null, array $config = array()) : voidConstructor.
| Name | Type | Description |
|---|---|---|
| $host | string | |
| $port | integer | |
| $config | array |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

__destruct() : voidClass destructor to cleanup open resources
Inherited from: \Zend_Mail_Protocol_Abstract::__destruct()
_connect(string $remote) : booleanConnect to the server using the supplied transport and target
Inherited from: \Zend_Mail_Protocol_Abstract::_connect()An example $remote string may be 'tcp://mail.example.com:25' or 'ssh://hostname.com:2222'
| Name | Type | Description |
|---|---|---|
| $remote | string | Remote |
| Type | Description |
|---|---|
| boolean |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

_disconnect() : voidDisconnect from remote host and free resource
Inherited from: \Zend_Mail_Protocol_Abstract::_disconnect()
_ehlo(string $host) : voidSend EHLO or HELO depending on capabilities of smtp host
| Name | Type | Description |
|---|---|---|
| $host | string | The client hostname or IP address (default: 127.0.0.1) |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

_expect(string | array $code, $timeout = null) : stringParse server response for successful codes
Inherited from: \Zend_Mail_Protocol_Abstract::_expect()Read the response from the stream and check for expected return code. Throws a Zend_Mail_Protocol_Exception if an unexpected code is returned.
| Name | Type | Description |
|---|---|---|
| $code | string | array | One or more codes that indicate a successful response |
| $timeout |
| Type | Description |
|---|---|
| string | Last line of response string |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

_receive( $timeout = null) : string| Name | Type | Description |
|---|---|---|
| $timeout |
| Type | Description |
|---|---|
| string |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |
- integer
Per-request timeout value if applicable

_send(string $request) : integer | booleanSend the given request followed by a LINEEND to the server.
Inherited from: \Zend_Mail_Protocol_Abstract::_send()| Name | Type | Description |
|---|---|---|
| $request | string |
| Type | Description |
|---|---|
| integer | boolean | Number of bytes written to remote host |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

_setStreamTimeout(integer $timeout) : boolean| Name | Type | Description |
|---|---|---|
| $timeout | integer |
| Type | Description |
|---|---|
| boolean |

auth() : voidDefault authentication method
This default method is implemented by AUTH adapters to properly authenticate to a remote host.
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

connect() : booleanConnect to the server with the parameters given in the constructor.
Concrete adapters for this class will implement their own unique connect scripts, using the _connect() method to create the socket resource.
| Type | Description |
|---|---|
| boolean |

data(string $data) : voidIssues DATA command
| Name | Type | Description |
|---|---|---|
| $data | string |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

getResponse() : arrayRetrieve the last server response
Inherited from: \Zend_Mail_Protocol_Abstract::getResponse()| Type | Description |
|---|---|
| array |

helo(string $host = '127.0.0.1') : voidInitiate HELO/EHLO sequence and set flag to indicate valid smtp session
| Name | Type | Description |
|---|---|---|
| $host | string | The client hostname or IP address (default: 127.0.0.1) |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

mail(string $from) : voidIssues MAIL command
| Name | Type | Description |
|---|---|---|
| $from | string | Sender mailbox |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

noop() : voidIssues the NOOP command and validates answer
Not used by Zend_Mail, could be used to keep a connection alive or check if it is still open.

rcpt(string $to) : voidIssues RCPT command
| Name | Type | Description |
|---|---|---|
| $to | string | Receiver(s) mailbox |
| Exception | Description |
|---|---|
| \Zend_Mail_Protocol_Exception |

rset() : voidIssues the RSET command and validates answer
Can be used to restore a clean smtp communication state when a transaction has been cancelled or commencing a new transaction.

setMaximumLog(integer $maximumLog) : void| Name | Type | Description |
|---|---|---|
| $maximumLog | integer | Maximum log size |