date_date_set() 函数设置 DateTime 对象的日期
date_date_set()函数是DateTime::setDate()的别名。 使用此函数,您可以(重新)设置DateTime对象的日期。
date_date_set($object, $year, $month, $day)
| 序号 | 参数及说明 |
|---|---|
| 1 | object(必需) 这是一个DateTime对象,您需要为其设置日期。 |
| 2 | year(必需) 年份 |
| 3 | month(必需) 月份 |
| 4 | day(必需) 日。 |
返回被修改的 DateTime 对象, 如果失败,此函数将返回布尔值false。
此函数最初是在PHP版本5.2.0中引入的,并且可以在所有更高版本中使用。
以下示例演示了date_date_set函数的用法-
<?php
//创建日期
$date = new DateTime();
//设置日期
date_date_set($date, 2019, 07, 17);
print("Date: ".date_format($date, "Y/m/d"));
?>测试看看‹/›输出结果
Date: 2019/07/17
下面的示例创建一个DateTime对象,并使用date_date_set()函数修改其日期。-
<?php
//日期字符串
$date_string = "25-09-1989";
//创建一个DateTime对象
$date_time_Obj = date_create($date_string);
print("Original Date: ".date_format($date_time_Obj, "Y/m/d"));
print("\n");
//设置日期
$date = date_date_set($date_time_Obj, 2015, 11, 25 );
print("Modified Date: ".date_format($date, "Y/m/d"));
?>测试看看‹/›输出结果
Original Date: 1989/09/25 Modified Date: 2015/11/25
在调用此函数时,如果您传递的日和月值超出其范围,它们将被添加到其父值-
<?php
//创建日期
$date = new DateTime();
//设置日期
date_date_set($date, 2019, 15, 17);
print("Date: ".date_format($date, "Y/m/d"));
?>测试看看‹/›由于我们将月份值设置为15。三个月被添加到适当的日期-
Date: 2020/03/17
使用date_date_set()设置新日期
<?php
$dateSrc = '2005-04-19 12:50 GMT';
$dateTime = date_create( $dateSrc);;
#现在使用date_date_set()设置新日期;
date_date_set( $dateTime, 2000, 12, 12);
echo "新的格式化日期为 ". $dateTime->format("Y-m-d\TH:i:s\Z");
echo "
";
#使用第二个函数。
$dateTime = new DateTime($dateSrc);
$dateTime->setDate( 1999, 10, 12);
echo "新的格式化日期为 ". $dateTime->format("Y-m-d\TH:i:s\Z");
?>测试看看‹/›输出结果:
新的格式化日期为 2000-12-12T12:50:00Z 新的格式化日期为 1999-10-12T12:50:00Z