问题描述
我有一个 exams
数组,其中每个 exam
都有将要接受它的 name
的 student
。
我正在使用 Laravel 包 Snappy PDF
来打印这些考试,并在 Blade 模板 内执行 @foreach
循环以显示 questions
和 其他信息。
在每个 student
/exam
的末尾,我跳转页面(所以,我从来没有在同一页面中有两个 students
),就像这样:
@foreach($students as $student)
<p>Student: $student['name']</p>
<p>Questions:</p>
@foreach($student['questions'] as $question)
. . .
@endforeach
<div style="page-break-after: always"></div>
@endforeach
我想在 PDF 的每个 footer
上显示一个 page
,并显示考试学生的姓名。我不想在每次考试中显示一个页脚,而是每页显示一个页脚,并带有正确的学生姓名(单个考试可以有多个页面)。
我所知道的显示此类页脚的唯一方法是使用 SnappyPDF 的 setoption
函数,如下所示:
->setoption("footer-right","Page [page] from [topage]")
->setoption("footer-right",'Student: {{$some_variable}}')
我可以在哪里更改模板 $some_variable
中的 @foreach
值,例如使用 @PHP
标签?
类似于:
@foreach($students as $student)
...
@PHP
$some_variable = $student['name'];
@endPHP
@endforeach
通过这样做,我可以在所有 PDF 页脚中显示正确的学生姓名。
但不幸的是,setoption
似乎从不运行 PHP 代码,它只是在其中设置了一个静态 HTML 模板,不能动态更改。
有没有办法使用 HTML 或 SnappyPDF 包显示这些页脚?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)