首页 > 使用php,如何高效的将数据构成一个html表格?

使用php,如何高效的将数据构成一个html表格?

有一个数据表,有如下几列

shop_id 门店编号
saledate 销售日期
trans_amt 销售金额

数据举例如下:

1 2015-06-01 3000
2 2015-06-01 5000
3 2015-06-01 6000
1 2015-06-02 3500
2 2015-06-02 5100
3 2015-06-02 6300
...
数据是每天每店一条记录,不重复

此表中的数据显示为如下的一个表格

shop_id 2015-06-01 2015-06-02 ...
1 3000 3500 ...
2 5000 5100 ...
3 6000 6300 ...
... ... ... ...

能想到的笨办法就是把数据取出来,循环加条件判断然后输出成表格,各位有没有好的解决方案或者思路可以高效的构建类似的表格?


这个太容易了呀,Codeigniter 自带的 table_helper 就可以实现啊,或者直接遍历 tr 就行了。

$table = [];
foreach($result AS $k=>$v) {
    array_push(sprintf('<tr><td>%s</td><td>%s</td><td>%s</td></tr>',
        $v->shop_id, $v->saledate, $v->trans_amt, // ...
    ));
}
$echo '<table>'.implode('', $table).'</table>';

表格只用一次,就用你现在的这个方法,要是多次使用,建议封装


你的实现方法是可行的,只是代码看起来可能没这么优雅。
建议你可以选用一些PHP框架,主流的框架基本都实现了html模版功能,推荐使用Laravelhttp://laravel.com语法很优雅!并且官方已经推出LTS版本。(长期支持 - long-time support)


使用Mysql的Limit进行分页显示啊


请问楼主:如果2015-06-01 shop_id 为2的有两条,你的表格怎么显示?

如果数据多了呢?有没有limit?
为什么不弄一张临时表,每天生成一条表格中数据~
与html表格的数据结构完全一致~
这样直接一条select搞定~循环也不用加条件,也好维护,即使以后表格需求变了。
大不了临时表废弃就好了~

【热门文章】
【热门文章】