DateTime::setISODate

date_isodate_set

(PHP 5 >= 5.2.0)

DateTime::setISODate -- date_isodate_setSets the ISO date

說明

物件導向風格

public DateTime DateTime::setISODate ( int $year , int $week [, int $day = 1 ] )

程序化風格

DateTime date_isodate_set ( DateTime $object , int $year , int $week [, int $day = 1 ] )

Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.

參數

object

僅為程序化風格:由 date_create() 回傳的 DateTime 類型的物件。此函式會修改這個物件。

year

Year of the date.

week

Week of the date.

day

Offset from the first day of the week.

回傳值

回傳被修改的 DateTime 物件, 或者在失敗時回傳 FALSE.

更新日誌

版本 說明
5.3.0將回傳值從NULL改為 DateTime 類型。

範例

Example #1 DateTime::setISODate() example

物件導向風格

<?php
$date 
= new DateTime();

$date->setISODate(20082);
echo 
$date->format('Y-m-d') . "\n";

$date->setISODate(200827);
echo 
$date->format('Y-m-d') . "\n";
?>

程序化風格

<?php
$date 
date_create();

date_isodate_set($date20082);
echo 
date_format($date'Y-m-d') . "\n";

date_isodate_set($date200827);
echo 
date_format($date'Y-m-d') . "\n";
?>

上例將輸出:

2008-01-07
2008-01-13

Example #2 Values exceeding ranges are added to their parent values

<?php
$date 
= new DateTime();

$date->setISODate(200827);
echo 
$date->format('Y-m-d') . "\n";

$date->setISODate(200828);
echo 
$date->format('Y-m-d') . "\n";

$date->setISODate(2008537);
echo 
$date->format('Y-m-d') . "\n";
?>

上例將輸出:

2008-01-13
2008-01-14
2009-01-04

Example #3 Finding the month a week is in

<?php
$date 
= new DateTime();
$date->setISODate(200814);
echo 
$date->format('n');
?>

上例將輸出:

3

參見

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top