date_timestamp_set()函数设置基于 Unix 时间戳的日期和时间。
date_timestamp_set()函数是DateTime::setTimestamp的别名。 此函数接受DateTime对象和Unix时间戳作为参数,并将指定的时间戳设置为给定的对象。
date_timestamp_set($object, $timestamp)
序号 | 参数及说明 |
---|---|
1 | object(必需) 这是一个DateTime对象。 |
2 | timestamp(必需) 这是Unix时间戳。 |
PHP date_timestamp_set()函数返回具有修改后的(时间)值的DateTime对象。如果失败,此函数将返回布尔值false。
此函数最初是在PHP版本5.3.0中引入的,并且可以在所有更高版本中使用。
以下示例演示了date_timestamp_set函数指定Unix 时间戳的日期和时间:
<?php $date = new DateTime(); $res = date_timestamp_set($date, 1505292545); print("Date: ".date_format($res, "Y/m/d H:i:s")); ?>测试看看‹/›
输出结果
Date: 2017/09/13 08:49:05
下面的示例创建一个DateTime对象,并使用date_timestamp_set()函数修改其值。-
<?php $date = new DateTime(); $timestamp1 = time() - (23*12*30); $res1 = date_timestamp_set($date, $timestamp1); print("Date: ".date_format($res1, "Y/m/d H:i:s")); print("\n"); $timestamp2 = time() + (23*12*30); $res2 = date_timestamp_set($date, $timestamp2); print("Date: ".date_format($res2, "Y/m/d H:i:s")); ?>测试看看‹/›
输出结果
Date: 2020/05/11 08:57:30 Date: 2020/05/11 13:33:30
作为此函数的代替方法,您可以仅将时间戳记值作为字符串传递,并以“ @”作为参数传递给DateTime构造函数
<?php $date = new DateTime("@1495283256"); print("Date: ".date_format($date, "Y/m/d H:i:s"));?>测试看看‹/›
因为我们已经将月份值设置为15。将在正确的时间内加上三个月
Date: 2020/05/11 00:15:36