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

如何将Date值转换为Unix时间戳?PowerApps简易实现咨询

如何将Date值转换为Unix时间戳(含PowerApps实现方法)

嘿,这问题我熟!先给你理清楚基本逻辑,再重点讲PowerApps里的简便实现方式。

通用转换逻辑

Unix时间戳本质是从1970年1月1日00:00:00 UTC(也就是所谓的"Unix纪元")到目标日期的时间差,通常有两种形式:

  • 秒级时间戳:差数以秒为单位(比如1583722800)
  • 毫秒级时间戳:差数以毫秒为单位(比如你示例里的1583722800000)

不管用什么语言,核心都是计算目标日期和Unix纪元起始时间的差值,再转换成对应的单位。

PowerApps里的简便实现方法

PowerApps本身没有内置的UNIX()函数,但我们可以自己构建公式,甚至封装成自定义函数,用起来和你示例里的写法一样方便!

1. 直接使用公式转换

如果你只是临时用一次,直接写下面的公式就行:

  • 毫秒级时间戳:
    DateDiff(Date(1970, 1, 1), YourDate, Milliseconds)
    
  • 秒级时间戳:
    DateDiff(Date(1970, 1, 1), YourDate, Seconds)
    

对应你给出的示例:

  • 转换今日日期:DateDiff(Date(1970, 1, 1), Today(), Milliseconds) → 返回1583722800000
  • 转换指定日期:DateDiff(Date(1970, 1, 1), Date(2020, 03, 09), Milliseconds) → 返回1583722800000

2. 封装成自定义函数(更简便)

如果需要多次使用,建议把这个逻辑封装成自定义函数,这样就能像你示例里那样直接调用UNIX(YourDate):

  1. 打开PowerApps Studio,点击右上角的设置 → 选择高级设置
  2. 找到允许自定义函数,开启这个选项
  3. 回到编辑界面,点击左侧菜单栏的公式 → 选择新建自定义函数
  4. 输入函数定义:
    UNIX = (dateValue As DateTime) -> DateDiff(Date(1970, 1, 1), dateValue, Milliseconds)
    
    (如果需要秒级,把Milliseconds换成Seconds即可)
  5. 保存后,你就可以在应用里直接用UNIX(Today())或者UNIX(Date(2020, 03, 09))来获取时间戳啦!

注意:PowerApps里的日期函数会受当前应用的时区设置影响,如果需要严格基于UTC计算,可以先用DateTimeValue(Text(YourDate, "yyyy-mm-ddThh:mm:ss"), UTC)把日期转成UTC时间再计算。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 21:08:12