CakeEmailを用いてMailgunで添付ファイルを送信する方法

下記は、MarkerChatのログを一部加工したものです

マーカー部分やアイコンをクリックすると当該コメントにスクロールします

MarkerChat管理者 2016-07-03 06:19:02

公開されているCakePHP 2.x for Mailgunを用いる。

https://github.com/kochb/cakephp-mailgun

以下の2つのクラスが利用可能

BasicTransport

CurlTransport

MarkerChat管理者 2016-07-03 06:21:43

BasicTransport

私の理解では、不可能(面倒くさい)

MarkerChat管理者 2016-07-03 06:24:18

CurlTransport

Plugin/Mailgun/Lib/Network/Email/CurlTransport.php
lib/Cake/Network/Email/CakeEmail.php

MarkerChat管理者 2016-07-03 06:29:31

CurlTransport.php

以下を送信処理前に追加
foreach( $email->getAttachFileName() AS $key => $val ) $post['attachment['. ($key+1). ']'] = curl_file_create( $val );

MarkerChat管理者 2016-07-03 06:27:01

CakeEmail.php

以下を最終行に追加
public function getAttachFileName(){
 $attachfile = array();
 foreach( $this->_attachments AS $key => $val ){
  if( !empty( $val['file'] ) ) array_push( $attachfile, $val['file'] );
 }
 return $attachfile;
}

© markerchat.com 2013-2015