大家好,我需要帮助,
我想每月向用户发送PDF邮件。但PDF将具有数据库中的值。因此,每个用户都有与另一个用户不同的内容,这些用户都从db获取值。如果我不能在Laravel上完美实现这一目标,我需要另一种语言可以帮助我实现这一目标。
$schedule->command('custom:command')
->monthly();
您可以在Laravel中完成任何您可以在PHP中实现的事情:),就Web开发而言,您可以在PHP中实现任何事情:)
但是,我不确定您到底要问什么,所以我将回答发送带有动态pdf的电子邮件的所有方面。
首先,您需要在pdf中填写字段,以便在运行时生成动态pdf。如果您的pdf中没有可填写的字段,则可以使用任何在线工具来创建它们。一个示例是:https : //www.pdfescape.com/
如果愿意,您也可以使用Adobe这样做。
一旦有了空的,可填充的PDF,就可以使用PDFTK库填充其中的数据。当然,您必须在服务器中安装此工具才能使用它。
我建议直接使用它,exec
或者在PHP中运行或使用类似命令。但是,如果您不舒服,可以使用Laravel中提供的各种Pdftk包装器。一个示例是:https : //github.com/mikehaertl/php-pdftk
我自己更喜欢exec
直接从PHP使用。这是一个很好的教程:https : //www.sitepoint.com/filling-pdf-forms-pdftk-php/
好的,一旦您生成PDF并将其保存在服务器上,您所要做的就是将其附加在电子邮件中并发送。您可以在这里找到有关Laravel附件的所有信息:https ://laravel.com/docs/5.1/mail#attachments
如果您必须定期执行此操作。我建议您在服务器上创建一个cron。有多种方法可以做到这一点。我建议您通过cPanel进行此操作,当然,如果您的服务器上有cPanel,因为它提供了非常友好的创建cron的方式。如果没有,您也可以使用终端在Linux Server中编辑cron文件。
我不建议使用Laravel inbuild Scheduler,因为它存在已知问题。
就是这样,瞧,这就是定期通过电子邮件发送动态生成的PDF的整个过程。祝好运!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句