在数据库中用逗号分隔多个值,并使用 foreach 使用 FPDF 打印到 PDF
Separating multiple values by comma in database, and printing to PDF with FPDF using foreach
如果这个问题解释得不好,我很抱歉,但我真的不知道怎么问。我是 FPDF 的新手,我正在尝试生成一个 PDF 文件,其中包含数据库中的一些值。当用户向 table 中插入值时,他们可以选择是否要将多行放入同一列。如果是这样,数据库中的 2 个不同值由 \n\n
分隔。然后在 FPDF 中,我希望它在注意到 \n\n
(新行)时打印出每个值。检查下面的代码。
$i = 1;
foreach ($row as $row) {
$pdf->Write(5, numberToRomanRepresentation($i).".");
$pdf->SetLeftMargin(35);
$pdf->SetRightMargin(35);
$pdf->SetFont('Times','BU',12);
$pdf->Write(5, $row['law_broken']);
$pdf->Ln(5);
$i += $i;
}
我尝试查找如何使用 explode(",", $row['law_broken'])
"notice" 新行,但没有成功。我还有希望吗?
谢谢
编辑 1:
将代码更改为如下所示:
$i = 1;
$row2['law_broken'] = explode(', ', $row2['law_broken']);
foreach ($result as $row2) {
$pdf->Write(5, numberToRomanRepresentation($i).".");
$pdf->SetLeftMargin(35);
$pdf->SetRightMargin(35);
$pdf->SetFont('Times','BU',12);
$pdf->Write(5, $row2['law_broken']);
$pdf->Ln(5);
$i += $i;
}
还将数据库中的值更改为用逗号分隔而不是 \r\n
不过还是不走运。
由于 explode
的结果是一个数组,您需要遍历每个元素输出每个元素。您可能需要调整线条的位置,但这应该会让您指向正确的方向。
foreach ($result as $row2) {
$pdf->Write(5, numberToRomanRepresentation($i).".");
$pdf->SetLeftMargin(35);
$pdf->SetRightMargin(35);
$pdf->SetFont('Times','BU',12);
$law_broken = explode(', ', $row2['law_broken']);
foreach ($law_broken as $lawline) {
$pdf->Write(5, $lawline);
$pdf->Ln(5);
} // end of foreach through each of the law_broken entries
} // end of foreach through the results
如果这个问题解释得不好,我很抱歉,但我真的不知道怎么问。我是 FPDF 的新手,我正在尝试生成一个 PDF 文件,其中包含数据库中的一些值。当用户向 table 中插入值时,他们可以选择是否要将多行放入同一列。如果是这样,数据库中的 2 个不同值由 \n\n
分隔。然后在 FPDF 中,我希望它在注意到 \n\n
(新行)时打印出每个值。检查下面的代码。
$i = 1;
foreach ($row as $row) {
$pdf->Write(5, numberToRomanRepresentation($i).".");
$pdf->SetLeftMargin(35);
$pdf->SetRightMargin(35);
$pdf->SetFont('Times','BU',12);
$pdf->Write(5, $row['law_broken']);
$pdf->Ln(5);
$i += $i;
}
我尝试查找如何使用 explode(",", $row['law_broken'])
"notice" 新行,但没有成功。我还有希望吗?
谢谢
编辑 1:
将代码更改为如下所示:
$i = 1;
$row2['law_broken'] = explode(', ', $row2['law_broken']);
foreach ($result as $row2) {
$pdf->Write(5, numberToRomanRepresentation($i).".");
$pdf->SetLeftMargin(35);
$pdf->SetRightMargin(35);
$pdf->SetFont('Times','BU',12);
$pdf->Write(5, $row2['law_broken']);
$pdf->Ln(5);
$i += $i;
}
还将数据库中的值更改为用逗号分隔而不是 \r\n
不过还是不走运。
由于 explode
的结果是一个数组,您需要遍历每个元素输出每个元素。您可能需要调整线条的位置,但这应该会让您指向正确的方向。
foreach ($result as $row2) {
$pdf->Write(5, numberToRomanRepresentation($i).".");
$pdf->SetLeftMargin(35);
$pdf->SetRightMargin(35);
$pdf->SetFont('Times','BU',12);
$law_broken = explode(', ', $row2['law_broken']);
foreach ($law_broken as $lawline) {
$pdf->Write(5, $lawline);
$pdf->Ln(5);
} // end of foreach through each of the law_broken entries
} // end of foreach through the results