服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - php动态实现表格跨行跨列实现代码

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

2020-01-16 13:59PHP教程网 PHP教程

由于按照条件提取多台服务器生成的报表数据的需要,我们很可能用到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 ""; 


?> 


调用方法如下: 

复制代码代码如下:


$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(); 

延伸 · 阅读

精彩推荐