- Home ›
- PEAR入門 ›
- メール送信(PEAR::Mail) ›
- HERE
Mailクラスのオブジェクトの作成
広告
まずMailを利用するためにはMailクラスのオブジェクトを作成する必要があります。オブジェクトを作成するにはMailクラスで用意されている「factory」メソッドを使います。
Mail::factory() object &factory (string $backend [, array $params = array()])
引数: $backend バックエンド名を指定「mail」「smtp」「sendmail」のいずれ かを指定する $params パラメータの配列 戻り値: 特定の Mail インスタンス、 または失敗した場合は PEAR_Error オブ ジェクト
1番目の引数にメールをどのように送信するかを指定します。指定できる値と送信方法は次の通りです。
バックエンド名 | 送信方法 |
---|---|
PHP の組込関数 mail() を使用して送信します | |
sendmail | sendmail プログラムにより送信します |
smtp | SMTP サーバに直接接続してメールを送信します |
2番目の引数にはバックエンド毎に異なるパラメータを指定します。
バックエンドとして「mail」を指定した場合には引数「$params」の値は「mail」関数の5番目の引数として渡されます。
バックエンドとして「sendmail」を指定した場合には次のような連想配列の形式で「$params」を指定します。
パラメータ | 設定する値 |
---|---|
sendmail_path | sendmailへのパス(デフォルトは「/usr/bin/sendmail」) |
sendmail_args | sendmailへ渡すパラメータ |
バックエンドとして「smtp」を指定した場合には次のような連想配列の形式で「$params」を指定します。
パラメータ | 設定する値 |
---|---|
host | SMTPサーバ名(デフォルトは「localhost」) |
port | ポート番号(デフォルトは「25」) |
auth | SMTP 認証を使用するかどうか(デフォルトは「false」) |
username | SMTP 認証で使用するユーザ名 |
password | SMTP 認証で使用するパスワード |
localhost | EHLO あるいは HELO を送信する際に使用する値(デフォルトは「localhost」) |
timeout | SMTP 接続のタイムアウト(デフォルトは「NULL」) |
verp | VERP を使用するかどうか(デフォルトは「false」) |
debug | SMTP デバッグモードを使用するかどうか(デフォルトは「false」) |
persist | SMTP 接続を、send() メソッドの複数回呼出しで持続させるかどうか |
これ以降はバックエンドとして「smtp」を使った方法を試して行きます。この場合例えば次のように記述します。
$params = array( "host" => "xxx.xxx.xxx.xxxx", "port" => 25, "auth" => false ); $mailObject = Mail::factory("smtp", $params);
「SMTPサーバ名」及びポート番号などはご利用になるSMTPサーバに合わせて変更して下さい。
( Written by Tatsuo Ikura )