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

如何将PHP页面表格中出生日期格式从YYYY/mm/dd改为dd/mm/YYYY

解决日期格式转换后重复显示的问题

你的问题核心是没有在循环内部为每个员工单独处理日期变量,导致所有行复用了同一个日期值。咱们直接修正循环里的代码逻辑,确保每条员工数据都能正确转换格式:

修正后的完整表格代码

<table id="tabla1" style="border: 1px #000000 solid;" width="100%" cellspacing="2" cellpadding="2" align="center">
    <tbody>
        <tr>
            <td class="tdcolor" align="left"><b>Data_naixement</b></td>
        </tr>
        <?php
        if($rows){
            while($post = mysqli_fetch_assoc($result)) {
                // 针对当前员工的日期单独做格式转换
                $originalDate = $post["Data_Naixement"];
                // 明确指定原始日期格式,避免自动解析出错
                $dateObj = DateTime::createFromFormat('Y/m/d', $originalDate);
                $formattedDate = $dateObj->format('d/m/Y');
        ?>
                <tr>
                    <td style="font-family: arial;padding-left: 20px;"><?php echo $formattedDate; ?></td>
                </tr>
        <?php
            }
        }else{
            // 把"not found"也放到表格单元格里,保持布局统一
            echo "<tr><td style='font-family: arial;padding-left: 20px;'>not found</td></tr>";
        }
        ?>
    </tbody>
</table>

关键修正说明:

  • 把日期转换逻辑放到while循环内部:每循环一次(处理一位员工),都会重新读取当前员工的原始日期,生成专属的日期对象,不会复用之前的变量值。
  • 使用DateTime::createFromFormat():明确告诉PHP原始日期的格式是Y/m/d,避免PHP自动解析时出现意外错误(比如不同服务器的时间解析规则差异)。
  • 修正了表格宽度的小错误:把width="%100"改成width="100%",确保表格宽度设置生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:30:00