Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用dompdf为我的PDF文件生成动态文件名?_Php_Filenames_Dompdf - Fatal编程技术网

Php 如何使用dompdf为我的PDF文件生成动态文件名?

Php 如何使用dompdf为我的PDF文件生成动态文件名?,php,filenames,dompdf,Php,Filenames,Dompdf,我正在使用dompdf,它似乎进展得非常顺利 我将生成的pdf文件作为电子邮件附件。我想知道如何在文件名后面加上一个唯一的数字,这样每个收到pdf文件的用户就不会有相同的文件名 我当前获取文件名,并获取已成功分配给它的任何名称,例如myfile.pdf 作为测试,我还可以在文件名后附加一个随机数,如下所示: $message = Swift_Message::newInstance() ->setSubject('My Subject Text

我正在使用dompdf,它似乎进展得非常顺利

我将生成的pdf文件作为电子邮件附件。我想知道如何在文件名后面加上一个唯一的数字,这样每个收到pdf文件的用户就不会有相同的文件名

我当前获取文件名,并获取已成功分配给它的任何名称,例如myfile.pdf

作为测试,我还可以在文件名后附加一个随机数,如下所示:

$message = Swift_Message::newInstance()
                       ->setSubject('My Subject Text') // Message subject
                       ->setTo(array('me@mydomain.com' => 'MyName'))   // Array of people to send to
                       ->setFrom(array('no-reply@mydomain.com' => 'SenderName')) // From:
                       ->setBody($html_message, 'text/html') // Attach that HTML message from earlier
                       ->attach(Swift_Attachment::newInstance($pdf_content, 'myfile'.rand(10,1000).'.pdf', 'application/pdf')); // Attach the generated PDF from earlier
这对于发送带有文件名和随机数的pdf非常有用

但是我怎么能用更有意义的东西来做呢

比如从一个特定的数字开始,然后对每个提交的文件自动递增

或者使用基于(或来自)会话的数字

有意义的最佳实践是什么

我希望每个文件名都是myfile_UNIQUENUMBER.pdf(我认为某种类型的自动递增或会话号最好)


想法?

当与
d/m/year
一起使用时,您可以将日期作为唯一的数字,并将时间与您选择的名称一起使用,以便每个文件名都有不同的数字。请尝试以下代码:

  $tym = date('m-d-Y : hi a');
  $filename = ' APPLICATION '.$tym; // YOU CAN CHOOSE YOUR FILE NAME
  $message = Swift_Message::newInstance()
  ->attach(Swift_Attachment::newInstance($pdf_content,  $_POST["username"] . $filename. ".pdf", 'application/pdf')); //

PHP对这类东西有很好的解释,pdf中有什么?我之所以问这个问题,是因为日期/时间对这类事情非常有效。可以是报表中pdf中数据的日期/时间,也可以是创建/运行pdf的日期/时间。是的,我认为日期和时间可能有效。是否有格式的日期和时间?或者它只是像:101420111042/那样写一个数字串,意思是2011年10月14日10:42?任何有效的文件名字符都可以使用<代码>$name='myfile'.date('m-d-Y'u hia')@johnthan Kuhn>php.net/date任何有效的文件名字符都可以使用。>$name='myfile'.date('m-d-Y_-hia)'.-乔纳森·库恩(Jonathan Kuhn)21分钟前,我不确定你的文字(“m-d-Y_-hia”)是否有错,括号外只有一个引号,但你的指导非常有用。这非常有效:->attach(Swift_Attachment::newInstance($pdf_content,'myfile'.date('m-d-Y_hia')。.pdf','application/pdf');//附上之前发送给我的文件:myfile_10-14-2011_0238pm.PDF中生成的PDF如果您的帮助仅显示为注释,我如何为您提供帮助?