添付ファイルの指定(OOP)

2008/04/17 未分類 spok
添付ファイルのOOP的指定方法です。

オブジェクトの生成や他のアドレスの指定は省略します。それらは、基本的な使い方-OOP編をみてください。
Qdmailでは、いくつでもファイルを添付することが出来ます。

簡単な指定方法

$mail -> attach( 'test.jpg' );
ファイル名は、呼びだしもとのスクリプトからの相対パスでしていします。
絶対パスでも指定できます。

例)
/home/hogehoge/images/test.jpg //絶対パス方式
./images/test.jpg //相対パス方式

簡単な指定方法2(日本語ファイル名)

$mail -> attach( array('test.jpg' , '添付ファイル名(日本語OK)' ) );

複数ファイルの指定方法(その1)

現在、この方法は指定できません。
$attachPath = array( 'test.jpg' , 'test2.gif' );
$attachName = array( '添付ファイル名1' , '添付ファイル名2' );

$mail -> attach ( $attachPath , $attachName );

1.1.0bより復活させました。ただし、制限事項があります。
$attachPath = array( 'test.jpg' , 'test2.gif' );
$mail -> attach ( $attachPath , $attachName );
この方式で添付ファイル名は指定できません。

この指定ができるのは、インラインモードtrue or シンプルアタッチモードtrueの時だけです。
インラインモードは、
$mail ->inlineMode(true);
ただし、qd_send_mailでデコメ送信時は自動的にインラインモードになります。

シンプルアタッチモードは、
$mail->simpleAttach(true);
です。

シンプルアタッチモード、インラインモードであっても、他の指定方法を併用できます。
ただし、 $attach = array( filename , attach_name );だけは併用できませんので、その場合は、$attach = array( array(filename , attach_name) );と入れ子にしてください。

複数ファイルの指定方法(その2)

$attach[] = array( 'test.jpg' , '添付ファイル名1' );
$attach[] = array( 'test2.gif' , '添付ファイル名2' );

$mail -> attach ( $attach );

複雑な添付ファイルの指定方法(MIMEタイプとContent-IDを独自指定)

$attach = array(
    'PATH' => 'test.jpg' ,
    'NAME' => '添付ファイル名1',
    'CONTENT-TYPE'=>'anything/mimetype',
    'CONTENT-ID'=>'image_0001',
 );

$mail -> attach ( $attach );