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

如何将wc_last_login时间戳1657324800转换为Y-m-d精确日期

WooCommerce wc_last_login 时间戳转Y-m-d格式日期实现方案

human_time_diff 是WordPress内置专门用于输出相对时间的函数,设计上就不支持返回精确日期,直接处理字段存储的Unix时间戳即可得到目标格式日期,具体实现分两种场景:

WordPress/WooCommerce 环境下(推荐)

优先使用WordPress原生的wp_date()函数,会自动读取站点后台设置的时区,避免时区偏差问题,示例代码:

// 替换为你实际需要查询的用户ID
$user_id = get_current_user_id();
$last_login_ts = get_user_meta( $user_id, 'wc_last_login', true );

$last_login_date = '';
if ( is_numeric( $last_login_ts ) && $last_login_ts > 0 ) {
    $last_login_date = wp_date( 'Y-m-d', (int)$last_login_ts );
}

// 输出使用,例如echo $last_login_date; 对于时间戳1657324800,在国内时区下会输出2022-07-09

纯PHP环境下

如果是脱离WordPress上下文处理该时间戳,使用PHP原生date()函数即可,注意提前设置对应时区避免日期偏差,示例代码:

$last_login_ts = 1657324800;
// 设置为业务对应的时区,例如国内站点设置为上海时区
date_default_timezone_set( 'Asia/Shanghai' );
$last_login_date = date( 'Y-m-d', $last_login_ts );

echo $last_login_date; // 输出2022-07-09

注意事项

  • 必须先校验wc_last_login的字段值:从未登录过的用户该字段为空,直接格式化会输出1970-01-01的异常日期
  • 不要尝试改造human_time_diff实现精确日期输出:该函数没有预留精确日期格式化的相关参数,强行修改会带来不必要的版本兼容问题
  • 时区优先跟随站点配置:WordPress环境下不要直接用原生date(),否则容易出现和系统时间差数小时的问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 00:48:23