date_time_set()函數(shù)設(shè)置 DateTime 對(duì)象的時(shí)間
所述date_time_set()函數(shù)是DateTime::setTime()函數(shù)的別名。使用此函數(shù),您可以(重新)設(shè)置DateTime對(duì)象的時(shí)間。
date_time_set($object, $hours, $minutes, $seconds, $microseconds)
| 序號(hào) | 參數(shù)及說(shuō)明 |
|---|---|
| 1 | object(必需) 這是一個(gè)DateTime對(duì)象,您需要為其設(shè)置日期。 |
| 2 | hours(必需) 這是一個(gè)整數(shù)值,表示要設(shè)置的時(shí)間。 |
| 3 | minute(必需) 這是一個(gè)整數(shù)值,表示要設(shè)置的時(shí)間的分鐘數(shù)。 |
| 4 | seconds(可選) 這是一個(gè)整數(shù)值,表示要設(shè)置的時(shí)間的秒數(shù)。 |
| 5 | microseconds(可選) 這是一個(gè)整數(shù)值,表示要設(shè)置的時(shí)間的微秒。 |
date_time_set()函數(shù)返回具有修改后的(時(shí)間)值的DateTime對(duì)象。如果失敗,此函數(shù)將返回布爾值false。
此函數(shù)最初是在PHP版本5.2.0中引入的,并且可以在所有更高版本中使用。
以下示例演示了date_time_set函數(shù)的用法-
<?php
//創(chuàng)建日期
$date = new DateTime();
//設(shè)置日期
date_time_set($date, 7, 20, 35);
print("Date: ".date_format($date, "Y/m/d H:i:s"));
?>測(cè)試看看?/?輸出結(jié)果
Date: 2020/05/10 07:20:35
下面的示例創(chuàng)建一個(gè)DateTime對(duì)象,并使用date_time_set()函數(shù)修改其t 。-
<?php
//日期字符串
$date_string = "25-09-1989 10:42:12";
//創(chuàng)建一個(gè)DateTime對(duì)象
$date_time_Obj = date_create($date_string);
print("原始日期: ".date_format($date_time_Obj, "Y/m/d H:i:s"));
print("\n");
//設(shè)定日期
$date = date_time_set($date_time_Obj, 6, 36, 3 );
print("修改日期: ".date_format($date, "Y/m/d H:i:s"));
?>測(cè)試看看?/?輸出結(jié)果
原始日期: 1989/09/25 10:42:12 修改日期: 1989/09/25 06:36:03
在調(diào)用此函數(shù)時(shí),如果您傳遞的日和月值超出其范圍,它們將被添加到其父值-
<?php
//創(chuàng)建日期
$date = new DateTime();
//設(shè)置日期
date_time_set($date, 24, 15, 36);
print("Date: ".date_format($date, "Y/m/d H:i:s"));
?>測(cè)試看看?/?由于我們將月份值設(shè)置為15。三個(gè)月被添加到適當(dāng)?shù)臅r(shí)間-
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";
# 使用第二個(gè)函數(shù)。
$dateTime = new DateTime($dateSrc);
$retval = $dateTime->setTime(20, 56,6);
echo 'DateTime::format(): '.$dateTime->format('Y:M:D:H:i:s');測(cè)試看看?/?輸出結(jié)果:
DateTime::format(): 2007:Apr:Thu:20:40:10 DateTime::format(): 2007:Apr:Thu:20:56:06