コンストラクタ Mail_Queue::Mail_Queue
コンストラクタ Mail_Queue::Mail_Queue() – Mail_Queue のコンストラクタ
Synopsis
require_once 'Mail/Queue.php';
mixed constructor Mail_Queue::Mail_Queue (
array $container_options
, array $mail_options
)
Description
メールをストア、フェッチ、
送信するための新しいメールキューオブジェクトを生成します。
Parameter
-
array
$container_options
-
コンテナ (メールストレージ) オプションの配列を指定します。
詳細はチュートリアルを参照してください。
-
array
$mail_options
-
メーラーオプションの配列を指定します。
詳細はチュートリアルを参照してください。
<?php
require_once 'Mail/Queue.php';
$container_options = array(
'type' => 'db',
'database' => 'dbname',
'phptype' => 'mysql',
'username' => 'root',
'password' => '',
'mail_table' => 'mail_queue',
);
//オプションとして、db パラメータの代わりに文字列 'dns' を
//指定することができる。詳細は、DB::connect() メソッド、
//あるいは DB、MDB のドキュメントを参照のこと。
//また、mdb コンテナを使用することができる。
$mail_options = array(
'driver' => 'smtp',
'host' => 'your_smtp_server.com',
'port' => 25,
'auth' => false,
'username' => '',
'password' => '',
);
$mail_queue =& new Mail_Queue($container_options, $mail_options);
* *****************************************************************
* // メールをキューに追加する
* *****************************************************************
$from = 'user@server.com';
$from_name = 'admin';
$recipient = 'recipient@other_server.com';
$recipient_name = 'recipient';
$message = 'Test message';
$from_params = empty($from_name) ? '<'.$from.'>' : '"'.$from_name.'" <'.$from.'>';
$recipient_params = empty($recipient_name) ? '<'.$recipient.'>' : '"'.$recipient_name.'" <'.$recipient.'>';
$hdrs = array(
'From' => $from_params,
'To' => $recipient_params,
'Subject' => 'test message body',
);
$mime =& new Mail_mime();
$mime->setTXTBody($message);
$body = $mime->get();
$hdrs = $mime->headers($hdrs);
// キューにメッセージを追加する
$mail_queue->put($from, $recipient, $hdrs, $body);
// メッセージをより上級モードで追加することもできる
$seconds_to_send = 3600;
$delete_after_send = false;
$id_user = 7;
$mail_queue->put( $from, $recipient, $hdrs, $body, $seconds_to_send, $delete_after_send, $id_user );
// キューにあるメールをを送信する
// 毎回何通のメールを送信するか
$max_ammount_mails = 50;
$mail_queue =& new Mail_Queue($container_options, $mail_options);
$mail_queue->sendMailsInQueue($max_ammount_mails);
?>
Return value
returns成功時は True、さもなければ PEAR エラークラス
Throws
throws 投げられる例外はありません
Note
This function can not be called
statically.