1、PHP创建一个一位数组,存放列名;再创建一个二维员工信息数组;
2、先用for循环拼接输出表头行;再用两个嵌套for循环拼接输出员工信息数据;
代码如下:
<?php $staffStructure = ['编号','姓名','年龄','性别','邮件']; $staffs = [[1,'王朝','12','男','122@qq.com'], [2,'马汉','23','男','1223@qq.com'], [3,'张龙','33','男','333@qq.com'], [4,'赵虎','32','男','344@aa.com'], [5,'李典','34','男','555@qqq.com'], [6,'李广','56','男','441@qq.com']]; $total = count($staffs); $title = '用户信息表'; ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title><?php echo $title; ?></title> <style> table,th,td{ border:1px solid black; padding: 8px; } table{ border-collapse: collapse; width: 80%; text-align: center; margin: 30px auto; } thead tr:first-of-type{background: lightblue;} tbody tr:hover{background-color: #efefef;} h2{font-size: 1.2rem;margin:20px auto;text-align: center;} p{margin:20px auto;text-align: center;} </style> </head> <body> <h2><?php echo $title; ?></h2> <table> <thead> <?php $lenth = count($staffStructure); $str = ''; for($i=0;$i<$lenth;$i++){ $str .= '<th>'.$staffStructure[$i].'</th>'; } echo $str; ?> </thead> <tbody> <?php $data = ''; $lenth = count($staffs); for($i=0;$i<$lenth;$i++){ $len=count($staffs[$i]); $data .= '<tr>'; for($j=0;$j<$len;$j++){ $data .= '<td>'.$staffs[$i][$j].'</td>'; } $data .= '</tr>'; } echo $data; ?> </tbody> </table> <p>总计<?php echo $total;?>人 </p> </body> </html>
=================
运行效果截图
=================
总结:
1、整个过程容易出错的地方在于经常忘记在i和j前面加$符号,尤其是数组元素$staffs[$i][$j]容易写成$staffs[i][j],可能是因为上大学的时候学过C语言的原因;
2、循环前,先用count()测试数组长度;