用PHP函数构造一个表

时间:2015-07-01 02:57:18

标签: php function html-table

我是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列的表,数字递增。

1 个答案:

答案 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);