Qdmail †
- Qdmail
- 高機能な日本語対応メール送信モジュール
- フレームワーク対応
- CakePHP1.1 & 1.2(バージョン0.7.6a以降)
- Symfony対応(1.1.3b以降)
- CodeIgniter対応
- Ethna対応
- Zend Framewordk対応
本文にメールヘッダが表示される場合、「lineFeed("\n");」を付けると直る †
$mail = & new Qdmail();
$mail->lineFeed("\n");
postfixでエラーの場合、以下をコメントアウト †
/* if(false !== @system($sendmail_path.' -d0.1 < /dev/null > /dev/null',$ret)){
if(is_array($ret)){
$ret = reset($ret);
}
$code = (int) substr($ret,0,3);
if( 100 === $code || 111 === $code){
$this->is_qmail = true;
}
}
*/
テンプレート送信例 †
<?php
require_once('qdmail.php'); // 1.2.6b
mb_language('ja');
mb_internal_encoding('UTF-8');
$replace = array(
'mail' => 'to@example.com', // 宛先メールアドレス
'name' => '宛先日本語名', // 宛先日本語名(省略可)
'hoge' => 'rep_hoge', // 置換対象
);
$from = array('from@example.com', '配信元日本語名(省略可)');
$subject = 'タイトルも日本語で';
$body =<<<EOD
%hoge%
%name%さんの登録内容をお送りします。
名前:%name%
メールアドレス:%mail%
このように、qd_send_mailでは、簡単にインサートメールを送信することができます。";
EOD;
// オブジェクト型
$mail = & new Qdmail();
$mail->lineFeed("\n"); // ヘッダの文字化け防止
$mail->unitedCharset( 'UTF-8' ); // 入力文字コード指定
$mail->simpleReplace(true); // 置換機能有効
$mail->errorDisplay( false ); // エラーを表示しない
//$mail->to( 'to@example.com' , '宛先日本語名(省略可)' );
$mail->to($replace);
$mail->subject( $subject );
$mail->text( $body );
$mail->from( $from );
if(!$mail->send()){
var_export( $mail->errorStatment() );//エラーの表示
}
// 関数型
$op = array('lineFeed' => "\n", 'unitedCharset'=>'UTF-8', 'simpleReplace'=>true);
$option = array('type'=>'text','option'=>$op );
qd_send_mail( $option , $replace ,$subject , $body , $from );