DateTime::setTimestamp

date_timestamp_set

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

DateTime::setTimestamp -- date_timestamp_set以 Unix 时间戳的方式设置 DateTime 对象

说明

面向对象风格

public DateTime::setTimestamp ( int $unixtimestamp ) : DateTime

过程化风格

date_timestamp_set ( DateTime $object , int $unixtimestamp ) : DateTime

以 Unix 时间戳的方式设置 DateTime 对象的日期和时间。

参数

object

仅过程化风格:由 date_create() 返回的 DateTime 类型的对象。此函数会修改这个对象。

unixtimestamp

表示日期时间的 Unix 时间戳。

返回值

返回被修改的 DateTime 对象, 或者在失败时返回 false.

范例

示例 #1 DateTime::setTimestamp() 例程

面向对象风格

<?php
$date 
= new DateTime();
echo 
$date->format('U = Y-m-d H:i:s') . "\n";

$date->setTimestamp(1171502725);
echo 
$date->format('U = Y-m-d H:i:s') . "\n";
?>

过程化风格

<?php
$date 
date_create();
echo 
date_format($date'U = Y-m-d H:i:s') . "\n";

date_timestamp_set($date1171502725);
echo 
date_format($date'U = Y-m-d H:i:s') . "\n";
?>

以上例程的输出类似于:

1272508903 = 2010-04-28 22:41:43
1171502725 = 2007-02-14 20:25:25

注释

PHP 5.2 之后的版本中, 可以使用 Unix 时间戳作为构造函数的参数生成新的 DateTime 对象,例如:

示例 #2 PHP 5.2 之后的版本中,DateTime::setTimestamp() 替代方案

<?php
$ts 
1171502725;
$date = new DateTime("@$ts");
echo 
$date->format('U = Y-m-d H:i:s') . "\n";
?>

以上例程的输出类似于:

1171502725 = 2007-02-14 20:25:25

参见