This is an answer当使用Mailgun的类的问题。我正在寻找一个适用于在PHP中使用CURL的答案。当通过PHP和CURL使用Mailgun时,PHPMailer的AddStringAttachment的等价物是什么?
使用的PHPMailer的课,我可以通过以下方式发送多个附件:
$mail->AddStringAttachment($attachment1, $title1);
$mail->AddStringAttachment($attachment2, $title2);
,因为我不是取出由服务器上的文件,并在一个字符串我不是作曲,我需要指定每个机箱的标题。
现在,我想通过PHP和CURL使用Mailgun来完成该操作。到目前为止,我采用了以下技术用于发送邮件不带附件:
$api_key="[my api key]";
$domain ="[my domain]";
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, 'api:'.$api_key);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_URL, 'https://api.mailgun.net/v2/'.$domain.'/messages');
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
"from" => "[sender]",
"to" => $to,
"subject" => $subject,
"html" => $content
));
在此之后相同的阵列中的指定字段的约定,什么是使用PHP和卷曲与发送字符串的附件,并指定标题的等效Mailgun?
为什么不使用Mailgun PHP api? –
我可能不得不这样做,但由于我只使用了MG的一些功能,我不介意让一个库更少。 –
如果您只想添加一个附件,那么只需将''attachment'=>'@/path/to/file.ext'添加到'CURLOPT_POSTFIELDS'数组中即可。但是他们的API指出,所有附件都使用表单名称'attachment',因此如果不覆盖以前的内容,就不能添加多个附件。在他们的API库中,使用来自GuzzleHttp的代码构造multipart/form-data请求,所以添加多个请求并不是问题。 – drew010