我在 PHP 中使用 PEAR Mail 发送 CSV 时遇到问题。我可以收到消息 OK,我什至可以打开 CSV 附件——但内容显示为 base64 编码的字符串,而不是普通的 CSV。
这是相关的代码,输出如下:
SUQsRW
在附加的 CSV 文件中。
显然不是我想要的!
// $csv is originally something like
// a,b,c,d,e
// d,e,f,g,h
$csv = base64_encode($csv);
$from = "...";
$to = "...";
$subject = "...";
$headers = array();
$headers['From'] = $from;
$headers['To'] = $to;
$headers['Subject'] = $subject;
// The attachment
$mime = new Mail_mime();
$mime->addAttachment($csv, "text/csv", "report.csv", false);
$mime->setTXTBody($bodyText);
$params = array();
$params['text_charset'] = 'utf-8';
$body = $mime->get($params);
$headers = $mime->headers($headers);
$smtp = Mail::factory('smtp', [unrelated server args]);
$mail = $smtp->send($to, $headers, $body);