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ù)及說明 |
---|---|
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