【Date And Time】编程中的时间概念与编程处理时间方法

本文详细介绍了JavaScript、Java和PHP中时间戳与时间字符串的转换方法,包括不同长度时间戳的处理、时间格式的解析以及时区转换。重点讨论了如何在不同编程语言中将时间戳转换为本地时间,并展示了具体的代码示例。

先记录,后整理

记录长度:

当前日期: 2021-10-12
  时间戳长度: 10位(秒)1634017713,13位(毫秒)1634017713684

  下面程序生成的时间/时间戳,是当前时区还是 UTC默认的时区的时间。要具体看服务器的配置。

JavaScript:
new Date(<时间戳(毫秒长度)>);
/**
 * 分隔符: - 或者 /
 * 可以有的格式: [年,年月,年月日,年月日时,年月日时分,年日月时分秒,年月日时分秒毫秒, 年 时分,...];
 * 具体怎么解析,后面再记录.
 */
new Date(<字符串: 格式=yyyy[-MM-dd [hh:]mm:ss]>);
 
 
/// 获取时间戳
new Date().getTime();

Java:
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.LocalDate;
/// ...
LocalDateTime localDateTime = Instant
	/// 解析时间戳
	.ofEpochSecond(<时间戳()>)
	/// 指定时区, ZoneOffset.ofHours(8) 是指时区对于 UTC 增加多少个小时
	.atZone(ZoneOffset.ofHours(8))
	/// 转成 LocalDateTime
	.toLocalDateTime();

Instant.ofEpochMilli(<时间戳(毫秒)>)

/// 秒:Integer, 毫秒: Long
/// 如果 Instant 要转成 LocalDate 或者 LocalDateTime 需要先通过 atZone 处理时区

PHP:
$date="2021-10-12";
echo strtotime($date); // output: 1633968000(秒,UTC时间)
// 如果要转成北京时间,需要时区 +8
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值