php动态实现表格跨行跨列的代码

发布时间:2019-10-26编辑:脚本学堂
按照条件提取多台服务器生成的报表数据时,很可能需要用php动态生成可以跨行跨列的表格,table跨行跨列杂糅在一起经常出现不好控制,而且行列合并属性的逻辑耦合度很高。

按照条件提取多台服务器生成的报表数据时,很可能需要用php动态生成可以跨行跨列的表格,table跨行跨列杂糅在一起经常出现不好控制,而且行列合并属性的逻辑耦合度很高。
以下的代码,可以轻松解决这个问题,有需要的朋友参考下吧。
 

复制代码 代码如下:
< ?php
/*
* author:xudafeng@126.com
* blog:http://www.xdf.me
* date:2012.7.28
*/
class danteng {
function init($col1_name, $col2_name, $col3_name, $time_unit) {
echo "<table border=1><tr><th>" . $col1_name . "</th><th>" . $col2_name . "</th><th colspan="" . $time_unit . "">" . $col3_name . "</th></tr>";
}
function baobiao_danteng($name, $time_unit, $pro_name, $pre_name) {
echo "<tr><th rowspan="" . count($pro_name) . "">$name</th><td>" . $pro_name[0] . "</td>";
for ($i = 0; $i < $time_unit; $i++) {
echo "<td>" . $pre_name . $i . "";
}
echo "</tr>";
for ($j = 0; $j < (count($pro_name) - 1); $j++) {
echo "<tr><td>" . $pro_name[($j + 1)] . "</td>";
for ($i = 0; $i < $time_unit; $i++) {
echo "<td>" . $pre_name . $i . "";
}
echo "";
}
}
function finish() {
echo "";
}
}
?>

调用方法:
 

复制代码 代码如下:
<?php
$init = new danteng();
$init -> init('类型', '项目', '时间单元', $time_num);
$init ->; baobiao_danteng('伏羲', $time_num, $fuxi_pro, 'pre_n');
$init ->; baobiao_danteng('女娲', $time_num, $nvwa_pro, '单元');
$init ->; baobiao_danteng('盘古', $time_num, $pangu_pro, '啊');
$init ->; baobiao_danteng('小冶', $time_num, $pangu_pro, '蛋子');
$init ->; finish();