Programmer's Reference Guide
SMTP 経由での送信
SMTP 経由でメールを送信するには、 send() をコールする前に
Zend_Mail_Transport_Smtp を作成し、それを
Zend_Mail に登録しなければなりません。スクリプト内でその後に
Zend_Mail::send() がコールされると、
SMTP による転送が使用されます。
$tr = new Zend_Mail_Transport_Smtp( 'mail.example.com' ) ;
Zend_Mail::setDefaultTransport ( $tr ) ;
setDefaultTransport() メソッドや
Zend_Mail_Transport_Smtp のコンストラクタは、
そんなに大げさなものではありません。この 2 行をスクリプトのセットアップ時
(config.inc など) に設定し、スクリプト内での Zend_Mail
の挙動を決めることができます。
これにより、メール送信を SMTP 経由で行うのか
» mail() を使用するのか、
そしてどのメールサーバを使用するのかなどといった設定情報を、
アプリケーションから分離できます。
Select a Version
1.11
1.10
1.9
1.8
1.7
1.6
1.5
1.0
Languages Available
Deutsch English Français 日本語 Русский 简体中文
Components
Select a component
Zend_Acl
Zend_Amf
Zend_Application
Zend_Auth
Zend_Barcode
Zend_Cache
Zend_Captcha
SimpleCloud API: Zend_Cloud
Zend_CodeGenerator
Zend_Config
Zend_Config_Writer
Zend_Console_Getopt
Zend_Controller
Zend_Currency
Zend_Date
Zend_Db
Zend_Debug
Zend_Dojo
Zend_Dom
Zend_Exception
Zend_Feed
Zend_File
Zend_Filter
Zend_Form
Zend_Gdata
Zend_Http
Zend_InfoCard
Zend_Json
Zend_Layout
Zend_Ldap
Zend_Loader
Zend_Locale
Zend_Log
Zend_Mail
Zend_Markup
Zend_Measure
Zend_Memory
Zend_Mime
Zend_Navigation
Zend_Oauth
Zend_OpenId
Zend_Paginator
Zend_Pdf
Zend_ProgressBar
Zend_Queue
Zend_Reflection
Zend_Registry
Zend_Rest
Zend_Search_Lucene
Zend_Serializer
Zend_Server
Zend_Service
Zend_Session
Zend_Soap
Zend_Tag
Zend_Test
Zend_Text
Zend_TimeSync
Zend_Tool
Zend_Tool_Framework
Zend_Tool_Project
Zend_Translate
Zend_Uri
Zend_Validate
Zend_Version
Zend_View
Zend_Wildfire
Zend_XmlRpc
ZendX_Console_Process_Unix
ZendX_JQuery
Comments
$mail->setFrom('a@gmail.com', 'Server');
$mail->addTo($to, 'a@gmail.com');
$mail->setSubject($subject);
$mail->send();
Zend_Mail::setDefaultTransport($tr);
$mail = new Zend_Mail();
$mail->setBodyText($body);
{
$config = array('ssl' => 'tls', 'port' => 587, 'auth' => 'login', 'username' => 'username@gmail.com', 'password' => 'password');
$transport = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config);
$mail = new Zend_Mail();
if (strtolower($this->getType()) == 'html')
$mail->setBodyHtml($this->getBody());
}
else {
$mail->setBodyText($this->getBody());
}
$mail
->setFrom($this->getFromEmail(), $this->getFromName())
->addTo($this->getToEmail(), $this->getToName())
->setSubject($this->getSubject());
$mail->send($transport);
return $this;
}