正如标题所说,我想从表单中提取一个输入来更改附件的名称。
当我说出来时:
->attach(Swift_Attachment::newInstance($pdf_content, '$post->name', 'application/pdf'))
它不起作用,但如果我这样叫出它的名字就可以了:
->attach(Swift_Attachment::newInstance($pdf_content, 'design.pdf', 'application/pdf'))
有什么想法吗?
答案 0 :(得分:0)
a) $post->name
很可能不是您认为的那样, b)单引号会让您感到困扰。< / p>
首先,验证$post->name
是字符串/文件名(例如 design.pdf ):
echo $post->name;
exit();
然后,一旦你确定它是你所期望的那样,在将它传递给函数时不要使用单引号:
->attach(Swift_Attachment::newInstance($pdf_content, $post->name, 'application/pdf'))
单引号包含的字符串是由PHP按字面意思取得的,因此您传递的所有内容都是$post->name
而不是$post->name
的值。如果您希望将字符串解析为包含变量,请使用双引号(..., "$post->name", ...
)或根本不使用引号(因为没有其他内容可以传递到那里)。