You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将MySQL JSON列数据通过PHP foreach渲染到HTML表格

解决MySQL JSON列数据在HTML表格中格式化展示的问题

核心思路

从数据库取出的sold_data是JSON格式的字符串,需先通过PHP的json_decode()解析为数组,再循环渲染成结构化HTML(嵌套子表格或列表),替代直接输出原始JSON内容。

代码修改方案

方案1:嵌套子表格展示(推荐,结构清晰)

将HTML表格中输出sold_data的<td>代码替换为以下内容:

<td>
  <?php
    // 把JSON字符串解析为关联数组,第二个参数true确保转为数组而非对象
    $soldRecords = json_decode($user['sold_data'], true);
    // 处理空数据或JSON解析失败的情况
    if (empty($soldRecords)) {
        echo "无销售记录";
    } else {
  ?>
        <table border="1" cellpadding="3" cellspacing="0" style="width:100%;">
            <thead>
                <tr>
                    <th>销量</th>
                    <th>买家ID</th>
                    <th>售价</th>
                    <th>日期</th>
                </tr>
            </thead>
            <tbody>
                <?php foreach ($soldRecords as $record): ?>
                <tr>
                    <td><?= htmlspecialchars($record['qty_sold']) ?></td>
                    <td><?= htmlspecialchars($record['buyer_id']) ?></td>
                    <td><?= htmlspecialchars($record['sell_price']) ?></td>
                    <td><?= htmlspecialchars(trim($record['date'])) ?></td>
                </tr>
                <?php endforeach; ?>
            </tbody>
        </table>
  <?php
    }
  ?>
</td>

方案2:无序列表展示(轻量简洁)

如果不需要复杂的表格结构,也可以用列表形式展示:

<td>
  <?php
    $soldRecords = json_decode($user['sold_data'], true);
    if (empty($soldRecords)) {
        echo "无销售记录";
    } else {
        echo "<ul style='margin:0; padding-left:18px;'>";
        foreach ($soldRecords as $idx => $record) {
            echo "<li>";
            echo "记录".($idx+1).": 销量{$record['qty_sold']} | 买家ID{$record['buyer_id']} | 售价{$record['sell_price']} | 日期".trim($record['date']);
            echo "</li>";
        }
        echo "</ul>";
    }
  ?>
</td>

关键细节说明

  • json_decode($user['sold_data'], true):将JSON字符串转为PHP关联数组,方便遍历取值。
  • htmlspecialchars():转义输出内容,防止XSS攻击,同时避免特殊字符导致页面格式错乱。
  • 空值判断:处理无销售记录或JSON解析失败的场景,避免页面出现报错信息。

内容的提问来源于stack exchange,提问作者Lasha Json

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 15:05:21