我是PHP的新手,我想用PHP函数构建一个表。我不知道我的代码不起作用。请帮我。
这是tablefunction.php
,
class Table {
private $row = '0';
private $col = '0';
function _constructSimpleTable($row, $col){
echo "<table>";
echo "<thead>";
foreach ($col as $key => $value){
echo "<th>".$col."</th>";
}
echo "</thead>";
echo "<tbody>";
foreach ($row as $key => $value){
echo "<tr><td>".$row."</td></tr>";
}
echo "</tbody>";
echo "</table>";
}
}
这是test.php
include ('./lib/tablefunction.php');
$class = new Table();
$class->_constructSimpleTable(3,4);
请帮助我在这里出错?
错误信息是这个
警告:在第10行的C:\ xampp \ htdocs \ WeltesLogisticInventory \ lib \ tablefunction.php中为foreach()提供的参数无效
警告:第16行的C:\ xampp \ htdocs \ WeltesLogisticInventory \ lib \ tablefunction.php中为foreach()提供的参数无效
我的预期输出是构建一个包含3行和4列的表,数字递增。
答案 0 :(得分:0)
你的$ row和$ col不是一个数组,但你在foreach循环中使用它。
如果您的预期输出如下:
1 2 3 4
1 2 3 4
1 2 3 4
首先1 2 3 4行是标题。
class Table {
private $row = '0';
private $col = '0';
function _constructSimpleTable($row, $col){
echo "<table>";
echo "<thead>";
for($i=1;$i<=$col;$i++){
echo "<th>".$i."</th>";
}
echo "</thead>";
echo "<tbody>";
for($i=1;$i<$row;$i++){
echo "<tr>";
for($j = 1;$j<=$col;$j++){
echo "<td>".$j."</td>";
}
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
}
}
$class = new Table();
$class->_constructSimpleTable(3,4);