Mailgun API-发送多个附件

时间:2019-02-05 12:11:00

标签: php mailgun

过去,我设法使用Mailgun发送一个附件。但是我现在有一个客户要求,要通过Mailgun作为附件发送多个文件。

我正在使用attachment [1]作为数组并传递它。我的问题是,它没有发送消息,也没有特别向我提供任何错误消息或响应消息。

我正在使用PHP和CURL发送电子邮件。

我的PHP代码是:

$curl_post_data = array
    (
        'from'    => $from,
        'to'      => $recipient,
        'subject' => $subject,
        'html'    => $message
    );

    // Deal with the file(s)...
    $x = 1;
    foreach( $files as $file )
    {
        $curl_post_data = array(
            "attachment[$x]" => curl_file_create( @$file['tempname'], $file['filetype'], $file['filename'])
        );
        $x ++;
    }

    echo "<pre>";
    print_r($curl_post_data);
    echo "</pre>";

    $service_url = 'https://api.mailgun.net/v3/sendmsg/messages';
    $curl = curl_init($service_url);
    curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    curl_setopt($curl, CURLOPT_USERPWD, "api:key-12322222");

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data'));
    curl_setopt($curl, CURLOPT_POST, true);

    curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

    $curl_response = curl_exec($curl);
    $response = json_decode($curl_response);
    curl_close($curl);

    var_dump($curl_response);

该函数的文件数组如下:

array(1) {
  [0]=>
  array(4) {
    ["filename"]=>
    string(8) "Paul.png"
    ["filetype"]=>
    string(9) "image/png"
    ["filepath"]=>
    string(14) "files/Paul.png"
    ["tempname"]=>
    string(24) "C:\xampp\tmp\php975D.tmp"
  }
}

任何人都可以看到任何特别引起此非发送问题的东西吗?

同样值得注意的是,我在当地工作。如果这也是可能的问题?

谢谢

0 个答案:

没有答案