Optionの指定方法

2008/08/02 未分類 spok
qd_send_mailでは、第1引数に $option を指定することで、様々な設定をすることができます。

通常のテキストメールを送るだけであれば、次のように、第1引数には'text'を指定するだけでした。
 qd_send_mail( 'text' , $to , $subject , $body , $from );
ここを配列にして、キー(添え字)を、'option' とし、さらにその option を配列で指定します。
例えば、本文文字コードセットをデフォルトのiso-2022-jpではなく、utf-8にして、さらに本文エンコードを base64 にすることを考えてみましょう。

$to,$subject,$body,$fromの設定は省略。それはqd_send_mailでのテキストメールの送り方をみてください。
$op = array( 'charset'=>array('utf-8','base64'));          // 文字コード設定
$option = array( 'type'=>'text' , 'option'=>$op); // テキストタイプ設定、オプションセット
qd_send_mail( $option , $to ,$subject , $body , $from );
このような指定をすることで、Qdmailの内部的には、
$op = array( 'charset'=>array('utf-8','base64'));
のオプションが解釈され、内部的に以下のようなコードが走ります。$mailには、Qdmailインスタンスが入っています。
$mail -> charset( array('utf-8','base64') )
これは、sendモード、OOPでの文字コードセットの変更の指定方法と全く同じです。

つまり、qd_send_mailでは、option に、配列として
array( 'メソッド名' => 'パラメータ' )
を指定することで、すべてのオプションを指定することができるのです。

第1引数を配列で指定するときには、配列地獄形式で表すと以下のようになります。
 array(
    'type'=>'text' ,    //メールタイプは必須。
    'option'=> array(
              'メソッド名1'=>'パラメータ1',
              'メソッド名2'=>'パラメータ2',
              'メソッド名3'=>'パラメータ3',
                    ・・・・・・・・・ 
    ),
 );