PHP合并最后一行2、3列
时间: 2024-10-18 10:09:49 浏览: 15
jQuery Datatables 动态列+跨列合并实现代码
在PHP中,如果你想在生成的HTML表格的最后一行合并第二列和第三列,通常会在获取到所有数据并计算总和后,手动创建一个新的数组或对象,然后用这个汇总数据替换原有的最后一行。这里有一个简单的例子:
首先,假设你在循环结束后已经计算出了总和,例如 `$totalAmount = $row['借方金额'] + $row['贷方金额'];`。接着,你可以这样做:
```php
// 假设$data是一个存储所有行数据的数组
if (isset($data[count($data) - 1])) { // 检查最后一个元素是否存在
$lastRow = end($data); // 获取最后一个元素
$lastRow['借方金额'] += $totalAmount; // 合并借方金额
unset($lastRow['贷方金额']); // 删除贷方金额,因为它会被合并
$lastRow['合计'] = '总计'; // 添加新的合计列
} else {
// 如果没有任何行,可以直接添加一个新的行
$lastRow = [
'业务日期' => '合计',
'借方金额' => '总计',
'贷方金额' => '总计',
'合计' => '总计'
];
$lastRow['借方金额'] = $totalAmount;
}
// 将合并后的数据添加回$data数组或直接输出到HTML表中
$data[] = $lastRow;
echo '<tr>';
echo '<td>' . htmlspecialchars($lastRow['业务日期']) . '</td>'; // 格式化日期以避免XSS攻击
echo '<td class="total" style="text-align: right;">'. htmlspecialchars(number_format($lastRow['借方金额'], 2)) .'</td>';
echo '<td class="total" style="text-align: right;">'. htmlspecialchars(number_format($lastRow['贷方金额'], 2)) .'</td>';
echo '<td class="total" style="text-align: right;">'. htmlspecialchars($lastRow['合计']) .'</td>';
echo '</tr>';
```
这里我们假设`$totalAmount`已经被正确地计算出来,并且在处理时添加了安全措施(如htmlspecialchars,防止XSS攻击)。`$data`需要根据实际的循环结构调整。
阅读全文