date_time_set()函数设置 DateTime 对象的时间
所述date_time_set()函数是DateTime::setTime()函数的别名。使用此函数,您可以(重新)设置DateTime对象的时间。
date_time_set($object, $hours, $minutes, $seconds, $microseconds)
| 序号 | 参数及说明 |
|---|---|
| 1 | object(必需) 这是一个DateTime对象,您需要为其设置日期。 |
| 2 | hours(必需) 这是一个整数值,表示要设置的时间。 |
| 3 | minute(必需) 这是一个整数值,表示要设置的时间的分钟数。 |
| 4 | seconds(可选) 这是一个整数值,表示要设置的时间的秒数。 |
| 5 | microseconds(可选) 这是一个整数值,表示要设置的时间的微秒。 |
date_time_set()函数返回具有修改后的(时间)值的DateTime对象。如果失败,此函数将返回布尔值false。
此函数最初是在PHP版本5.2.0中引入的,并且可以在所有更高版本中使用。
以下示例演示了date_time_set函数的用法-
<?php
//创建日期
$date = new DateTime();
//设置日期
date_time_set($date, 7, 20, 35);
print("Date: ".date_format($date, "Y/m/d H:i:s"));
?>测试看看‹/›输出结果
Date: 2020/05/10 07:20:35
下面的示例创建一个DateTime对象,并使用date_time_set()函数修改其t 。-
<?php
//日期字符串
$date_string = "25-09-1989 10:42:12";
//创建一个DateTime对象
$date_time_Obj = date_create($date_string);
print("原始日期: ".date_format($date_time_Obj, "Y/m/d H:i:s"));
print("\n");
//设定日期
$date = date_time_set($date_time_Obj, 6, 36, 3 );
print("修改日期: ".date_format($date, "Y/m/d H:i:s"));
?>测试看看‹/›输出结果
原始日期: 1989/09/25 10:42:12 修改日期: 1989/09/25 06:36:03
在调用此函数时,如果您传递的日和月值超出其范围,它们将被添加到其父值-
<?php
//创建日期
$date = new DateTime();
//设置日期
date_time_set($date, 24, 15, 36);
print("Date: ".date_format($date, "Y/m/d H:i:s"));
?>测试看看‹/›由于我们将月份值设置为15。三个月被添加到适当的时间-
Date: 2020/05/11 00:15:36
$dateSrc = '2007-04-19 12:50 GMT';
$dateTime = date_create( $dateSrc);;
$retval = date_time_set( $dateTime, 20, 40, 10);
echo 'DateTime::format(): '.$dateTime->format('Y:M:D:H:i:s');
echo "\n";
# 使用第二个函数。
$dateTime = new DateTime($dateSrc);
$retval = $dateTime->setTime(20, 56,6);
echo 'DateTime::format(): '.$dateTime->format('Y:M:D:H:i:s');测试看看‹/›输出结果:
DateTime::format(): 2007:Apr:Thu:20:40:10 DateTime::format(): 2007:Apr:Thu:20:56:06