On this page
idate
(PHP 5, PHP 7, PHP 8)
idate — Format a local time/date part as integer
Description
idate(string $format, ?int $timestamp = null): int|false
Returns a number formatted according to the given format string using the given integer timestamp or the current local time if no timestamp is given. In other words, timestamp is optional and defaults to the value of time().
Unlike the function date(), idate() accepts just one char in the format parameter.
Parameters
format-
The following characters are recognized in the formatparameter stringformatcharacterDescription BSwatch Beat/Internet Time dDay of the month hHour (12 hour format) HHour (24 hour format) iMinutes I(uppercase i)returns 1if DST is activated,0otherwiseL(uppercase l)returns 1for leap year,0otherwisemMonth number NISO-8601 day of the week ( 1for Monday through7for Sunday)oISO-8601 year (4 digits) sSeconds tDays in current month USeconds since the Unix Epoch - January 1 1970 00:00:00 UTC - this is the same as time() wDay of the week ( 0on Sunday)WISO-8601 week number of year, weeks starting on Monday yYear (1 or 2 digits - check note below) YYear (4 digits) zDay of the year ZTimezone offset in seconds timestamp-
The optional
timestampparameter is an int Unix timestamp that defaults to the current local time iftimestampis omitted ornull. In other words, it defaults to the value of time().
Return Values
Returns an int on success, or false on failure.
As idate() always returns an int and as they can't start with a "0", idate() may return fewer digits than you would expect. See the example below.
Errors/Exceptions
Every call to a date/time function will generate a E_WARNING if the time zone is not valid. See also date_default_timezone_set()
Changelog
| Version | Description |
|---|---|
| 8.2.0 | Adds the N (ISO-8601 day of the week) and o (ISO-8601 year) format characters. |
| 8.0.0 | timestamp is nullable now. |
Examples
Example #1 idate() example
<?php
$timestamp = strtotime('1st January 2004'); //1072915200
// this prints the year in a two digit format
// however, as this would start with a "0", it
// only prints "4"
echo idate('y', $timestamp);
?>
See Also
- DateTimeInterface::format() - Returns date formatted according to given format
- date() - Format a Unix timestamp
- getdate() - Get date/time information
- time() - Return current Unix timestamp
© 1997–2023 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.idate.php