(PHP 5 >= 5.3.0, PHP 7, PHP 8)
DateTime::setTimestamp -- date_timestamp_set — 以 Unix 时间戳的方式设置 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($date, 1171502725);
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