idate

(PHP 5, PHP 7, PHP 8)

idateFormatiert einen Teil der lokalen Zeit/des lokalen Datums als Integer

Beschreibung

idate(string $format, ?int $timestamp = null): int|false

Formatiert den angegebenen ganzzahligen Zeitstempel timestamp entsprechend dem angegebenen Formatzeichen und gibt eine Datumszahl zurück. Wenn kein Zeitstempel angegeben wird, wird die aktuelle Ortszeit verwendet. Mit anderen Worten: timestamp ist optional und wird mit dem Wert der Funktion time() vorbelegt.

Anders als die Funktion date() akzeptiert idate() nur ein Zeichen im Parameter format.

Parameter-Liste

format

Die folgenden Zeichen werden in der Parameterzeichenkette format erkannt
format-Zeichen Beschreibung
B Swatch-Internetzeit (Swatch-Beat)
d Tag des Monats
h Stunde (12-Stunden-Format)
H Stunde (24-Stunden-Format)
i Minuten
I (großes i) Gibt 1 zurück, wenn die Sommerzeit aktiviert ist, andernfalls 0
L (großes l) Gibt bei einem Schaltjahr 1 zurück, andernfalls 0
m Nummer des Monats
N ISO-8601-Wochentag (1 für Montag bis 7 für Sonntag)
o ISO-8601-Jahr (4 Ziffern)
s Sekunden
t Anzahl der Tage im aktuellen Monat
U Anzahl der Sekunden seit der Unix-Epoche - 1. Januar 1970 00:00:00 UTC - dies ist gleichbedeutend mit time()
w Wochentag (0 für Sonntag)
W ISO-8601-Wochennummer des Jahres, Wochen beginnend am Montag
y Jahr (1 oder 2 Ziffern - siehe Hinweis unten)
Y Jahr (4 Ziffern)
z Tag des Jahres
Z Zeitverschiebung in Sekunden

timestamp

Der optionale Parameter timestamp ist ein Unix-Zeitstempel vom Typ int. Falls timestamp nicht übergeben wird oder null ist, wird die aktuelle lokale Zeit als Standardwert verwendet. Er entspricht dann also dem Ergebnis der Funktion time().

Rückgabewerte

Gibt bei Erfolg einen Wert vom Typ int zurück. Bei einem Fehler wird false zurückgegeben.

Da idate() immer einen Wert vom Typ int zurückgibt und dieser nicht mit einer "0" beginnen kann, gibt idate() möglicherweise weniger Ziffern zurück, als zu erwarten wäre. Siehe das Beispiel unten.

Fehler/Exceptions

Wenn die Zeitzone ungültig ist, wird bei jedem Aufruf einer Datums/Zeit-Funktion ein Fehler der Stufe E_WARNING erzeugt. Siehe auch date_default_timezone_set()

Changelog

Version Beschreibung
8.2.0 Die Zeichen N (ISO-8601-Wochentag) und o (ISO-8601-Jahr) wurden hinzugefügt.
8.0.0 timestamp ist nun nullable (akzeptiert den null-Wert).

Beispiele

Beispiel #1 idate()-Beispiel

<?php
$timestamp
= strtotime('1st January 2004'); //1072915200

// dies gibt die Jahreszahl in einem zweistelligen Format aus
// da diese jedoch mit einer "0" beginnen würde, wird
// nur "4" ausgegeben.
echo idate('y', $timestamp);
?>

Siehe auch

add a note add a note

User Contributed Notes 1 note

up
2
khaine at herbok dot org
14 years ago
A function that made by idate for print a hour you want:

<?php
function hour ( $a, $b )
{
   
$timestamp = strtotime(''.$a.':'.$b.':00');
   
$aa = idate('H', $timestamp);
   
$bb = idate('i', $timestamp);
    if(
$bb=="0") { $cc = "00"; } else { $cc = $bb; }
   
$dd = $aa.".".$cc;
    return(
$dd);
}
?>

Why should i use it?
For example:
You have to print 08:00 to 21:00 by 15 minutes periods.
This is a useful code for shipping sites for delivery time.

<?php
echo "<select name=\"example\">";
for(
$i=8;$i<=20;$i++)
{
    for(
$ii=0;$ii<=3;$ii++)
    {
       
$iii = $ii * 15;
       
$hour = hour($i, $iii);
        echo
"<option value=\"".$hour."\">".$hour."</option>";
    }
}
echo
"</select>";
?>
To Top