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

反序列化数组在循环显示时数据合并问题求助

解决PHP反序列化MySQL存储数组后表格行数据累加问题

问题描述

在MySQL中存储序列化数组,通过PHP反序列化后在表格展示时出现异常:每一行内容会累加之前所有行的数据,例如第一行显示自身的3条数据,第二行却包含第一行的3条加自身的4条,后续行均以此类推。

问题原因

变量$abc在循环外部初始化,每次循环仅通过.=追加当前行的反序列化内容,未在处理每一行前重置为空,导致之前行的内容被持续保留并累加。

修复后的代码

$output = '';
foreach($result as $row) {
    // 处理新行前重置变量,清空之前的内容
    $abc = '';
    $fine_types = unserialize($row['fine_type']);
    
    foreach ($fine_types as $fine_type) {
        $abc .= "<div dir='rtl' lang='ar' class='fntype'> {$fine_type}</div>";
    }
    
    // 构建表格行
    $output .= '
    <tr>
        <td style="text-align:right;">' . $abc . '</td>
    </tr>';
}
echo $output;

序列化与反序列化示例

  • 序列化字符串示例:

    a:3:{i:0;s:177:"66   -   عدم تخزين وحفظ المواد الغذائية الجافة والمبردة والمجمدة في درجة مناسبة حرارة مناسبة لكل نوع";i:1;s:76:"13   -   عدم وجود لوحة إعلانية بالاسم التجاري";i:2;s:63:"9   -   إضافة فرع أو مستودع بدون ترخيص";}
    
  • 反序列化后中文内容:

    • 66 - 未将干制、冷藏、冷冻食品存储在对应类型适配的合适温度环境中
    • 13 - 未设置带有商业名称的公告标识牌
    • 9 - 在未取得许可证的情况下增设分支机构或仓库

内容的提问来源于stack exchange,提问作者Hunt Gear Pro

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 03:41:21