我正在尝试将3个pdf文件附加到电子邮件中,我遇到的问题是,is\u file在前两个文件上给出了false,但第三个文件有效。这些文件来自文本框,并按如下方式分解:
$pdfs = explode("\n", $string);
我将其放入foreach循环中,以附加到如下电子邮件:
foreach($pdfs as $pdf) {
if (is_file(JPATH_ROOT . $pdf)) {
$mail['attachment'][] =
array('name' => basename($pdf), 'file' => JPATH_ROOT . $pdf);
}
}
当我运行这段代码时,我只附带了第三个pdf文件,但是如果我删除
is_file()
它们位于阵列中,但不会附加到已发送的电子邮件。
那么结果是:
[attachment] => Array
(
[0] => Array
(
[name] => pdf_file_1.pdf
[file] => /home/psinke/domains/*****/public_html/pdf_file_1.pdf
)
[1] => Array
(
[name] => pdf_file_2.pdf
[file] => /home/psinke/domains/*****/public_html/pdf_file_2.pdf
)
[2] => Array
(
[name] => pdf_file_3.pdf
[file] => /home/psinke/domains/*****/public_html/pdf_file_3.pdf
)
)
但前两个文件不会附加到发送的电子邮件中。