0
私は電子メールクライアントを作っています。私はサーバ上のメールに添付されているすべてのファイルを保存する機能を持っています。ファイルはサーバー上に保存されていますが、すべてのファイルのサイズが0 KBになり、すべてのファイルのエンコーディングが3に等しいという問題があります。imap_fetchbody()の正しいオプション。
imap_fetchbody()
の正しいオプションを選択する方法を知りたい添付ファイルのサブタイプの基礎。
これは私のコードです:
if($attachments[$i]['is_attachment']){
$attachments[$i]['attachment'] = imap_fetchbody($imap, $uid, $i + 1;);
if($structure->parts[$i]->type == 1){
// 3 = BASE64
$attachments[$i]['attachment'] = imap_8bit($attachments[$i]['attachment']);
}
if($structure->parts[$i]->type == 2){
// 3 = BASE64
$attachments[$i]['attachment'] = imap_binary($attachments[$i]['attachment']);
}
if($structure->parts[$i]->type == 7){
// 3 = BASE64
$attachments[$i]['attachment'] = imap_base64($attachments[$i]['attachment']);
}
if($structure->parts[$i]->type == 4){
// 3 = BASE64
$attachments[$i]['attachment'] = imap_qprint($attachments[$i]['attachment']);
}
if($structure->parts[$i]->type == 3){
// 3 = BASE64
$attachments[$i]['attachment'] = base64_decode($attachments[$i]['attachment']);
}
elseif($structure->parts[$i]->type == 4){
// 4 = QUOTED - PRINTABLE
$attachments[$i]['attachment'] = quoted_printable_decode($attachments[$i]['attachment']);
}
//return $message;
}