如何在PHP中显示表格数据?

时间:2014-05-08 16:48:42

标签: php html asp.net

我来自Asp.net世界,一切都是模块化的,有时会产生头痛和恶心,你会忘记你实际上在做什么。

在PHP中,我试图研究如何显示表格数据,解决方案非常简单,但看起来非常仓促,因为如果我写了很多代码,那么它就会变得混乱。

所以我的问题是我应该遵循什么标准来处理重复数据,如果有的话?请指导我学习一些优质材料,因为我尝试但没有找到任何东西。我有studied this link。 的 [编辑]
asp.net呈现表格数据的方式是使用GridView。在这里,您只需创建一个GridView类的实例,并将从数据库中检索到的数据发送给它,并保持工作在场景后面完成,而不会使用html弄乱C#或VB代码或一次又一次地写入相同的逻辑。我的意思是它是代码可恢复性的一个很好的例子,我想在php中使用类似的东西来编写重复代码一次然后继承它,如果我想要它在其他地方。

1 个答案:

答案 0 :(得分:0)

我自己已经从ASP.NET迁移到php,并且一句建议就是忘记你在ASP.net中学到了什么,因为ASP.net在Web开发中抽象了很多东西,以至于忘了你正在使用它基本的html / jscript和http。但同样,这只是个人意见。

讨论如何显示表格并用数据填充表格的问题。看看这个例子。这里

<?php
    $people = array(
        array('Tom', '16'),
        array('John', '21'),
        array('Kate', '19'),
        array('Luke', '25')
    )
?>
<html>
    <head>
        <title></title>
    </head>
    <body>
        <table>
            <tr>
                <td>Name</td><td>Age</td>
            </tr>
            <?php foreach($people as $person){ ?>
                    <tr>
                        <td><?php echo $person[0]; ?></td>
                        <td><?php echo $person[1];  ?></td>
                    </tr>
            <?php } ?>
        </table>
    </body>
</html>
  1. 我创建了一个二维数组,其中包含有关People及其age的数据。由于简单起见,我使用硬编码数组而不是从数据库中检索数据。
  2. 然后我使用while循环遍历数组中的数据,对于每个元组,我在表中添加<tr>。这类似于ASP.NET中的repeater
  3. DEMO


    刚刚注意到你想要一个模块化的版本。这是一个例子:

    <强>的index.php

    <?php
    include('inc.datasource.php');
    
    $people = DataSource::getUsers();
    
    ?>
    <html>
        <head>
            <title></title>
        </head>
        <body>
            <table>
                <tr>
                    <td>Name</td><td>Age</td>
                </tr>
    
                <!-- Render rows with data -->
                <?php foreach($people as $person){ ?>
                        <tr>
                            <td><?php echo $person[0]; ?></td>
                            <td><?php echo $person[1];  ?></td>
                        </tr>
                <?php } ?>
                <!-- End render rows with data -->
    
            </table>
        </body>
    </html>
    

    <强> inc.database.php

    <?php
    class DataSource{
    
        public static function getUsers(){
            //Connect to database
            //Retrieve user data
            //Return user data
    
            //Simulating the above steps for simplicity sake
            $people = array(
                array('Tom', '16'),
                array('John', '21'),
                array('Kate', '19'),
                array('Luke', '25')
            );
            return $people;
        }
    }
    ?>
    

    <小时/> 如果你想从你的HTML完全分离你的PHP。我建议你使用一个php mvc框架。我个人喜欢使用LaravelCodeIgniter