gpt4 book ai didi

php - 使用可变大小的可变部分向 html 动态添加分页符

转载 作者:行者123 更新时间:2023-11-28 15:55:13 25 4
gpt4 key购买 nike

我正在尝试解决当前的问题,我可以使用一些帮助:从使用 php 的数据库中,页面必须加载 X 个部分,每个部分在顶部都有一些内容,在底部有一个表格和一些内容,表格可以有 0 到任意数量的行,具体取决于之前的内容数据库。除了表格之外,其余内容的大小没有变化。

由于表格的关系,我无法事先知道每个部分的大小,通常至少有 30 个部分。

这个页面必须是打印友好的,除了分页符之外,一切都已经正常工作了。

我需要找到一种方法来动态添加分页符以适应页面中的部分而不在页面之间切割它们。

代码大约有 400 行,因此将其发布在这里是不切实际的,但是部分结构是这样的:

<section class="row">
<section>
<section class="col-md-2"></section>
<section class="col-md-8 printcenter">
<p class="docenteheader" >
<span class="tabspaceright">NAME: <strong>name</strong></span>
<span class="tabspaceleft">ID: <strong>number</strong></span>
</p>
<table>
  <tr>
    <th><strong>1:</strong></th>
<th><strong>2:</strong></th>
<th><strong>3:</strong></th>
<th><strong>4:</strong></th>
  </tr>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
</table>
<p><strong>Something1:</strong> Something</p>
<p>
<span><strong>Something2: number</strong></span>
<span ><strong>Something3: number</strong></span>
</p>
<section class="rel_endline"></section>
</section>
<section class="col-md-2"></section>
</section>
</section>

我去掉了css类和原来的名字以及PHP代码方便查看

最佳答案

这是示例 PHP 代码,如果有任何不清楚的地方,请告诉我。我尝试使用不言自明的变量名。

<?php

$PAGEBREAK_LENGTH = 1000; // Add a page break every 1000 characters.
$lengthTracker = '';

while ($row = odbc_fetch_array($res)){
$lengthTracker .= $row['article'];
$lengthSize = strlen($lengthTracker);

if ($lengthSize > $PAGEBREAK_LENGTH) {
echo '<div class="page-break">This is a page break</div>';
$lengthTracker = ''; // Reset length tracker since we just added a break
}

echo '<div class="article">';
echo $row['article'];
echo '</div>';
}

?>

如果您在回显文章之前包含 if ($lengthSize > $PAGEBREAK_LENGTH),您将倾向于“更频繁地”包含分页符。如果您在回显文章后包含 if 语句,您将不会经常出现分页符(因此您可能会有更大的文本 block )。

尝试两种方式,看看您喜欢哪种风格,因为您(大概)不能在文章中间包含分页符。

关于php - 使用可变大小的可变部分向 html 动态添加分页符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41270137/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com