Data i godzina w PHP
Funkcja PHP date()
służy do formatowania daty i/lub czasu.
Funkcja PHP Date()
Funkcja PHP date()
formatuje znacznik czasu na bardziej czytelną datę i godzinę.
Składnia
date(format,timestamp)
Parameter | Description |
---|---|
format | Required. Specifies the format of the timestamp |
timestamp | Optional. Specifies a timestamp. Default is the current date and time |
Znacznik czasu to sekwencja znaków oznaczająca datę i/lub godzinę wystąpienia określonego zdarzenia.
Umów się na randkę
Wymagany parametr formatu funkcji date() określa sposób formatowania daty (lub czasu).
Oto kilka znaków, które są powszechnie używane do dat:
- d - Reprezentuje dzień miesiąca (od 01 do 31)
- m — oznacza miesiąc (od 01 do 12)
- Y - oznacza rok (cztery cyfry)
- l (mała litera 'L') - Reprezentuje dzień tygodnia
Inne znaki, takie jak „/”, „.” lub „-” można również wstawić między znakami, aby dodać dodatkowe formatowanie.
Poniższy przykład formatuje dzisiejszą datę na trzy różne sposoby:
Przykład
<?php
echo "Today is " . date("Y/m/d") . "<br>";
echo "Today is " . date("Y.m.d") . "<br>";
echo "Today is " . date("Y-m-d") . "<br>";
echo "Today is " . date("l");
?>
Wskazówka dotycząca PHP — automatyczny rok praw autorskich
Skorzystaj z date()
funkcji, aby automatycznie zaktualizować rok praw autorskich w swojej witrynie:
Przykład
© 2010-<?php echo date("Y");?>
Znajdź czas
Oto kilka znaków, które są powszechnie używane dla czasów:
- H - 24-godzinny format godziny (00 do 23)
- h - 12-godzinny format godziny z wiodącymi zerami (01 do 12)
- i - minuty z wiodącymi zerami (od 00 do 59)
- s - Sekundy z wiodącymi zerami (00 do 59)
- a - Małe litery Ante meridiem i Post meridiem (przed południem lub po południu)
Poniższy przykład wyświetla aktualny czas w określonym formacie:
Przykład
<?php
echo "The time is " . date("h:i:sa");
?>
Zauważ, że funkcja PHP date() zwróci bieżącą datę/czas serwera!
Uzyskaj swoją strefę czasową
Jeśli godzina powrotu z kodu jest nieprawidłowa, prawdopodobnie jest to spowodowane tym, że Twój serwer znajduje się w innym kraju lub jest skonfigurowany dla innej strefy czasowej.
Jeśli więc potrzebujesz poprawnego czasu w określonej lokalizacji, możesz ustawić strefę czasową, której chcesz używać.
Poniższy przykład ustawia strefę czasową na „Ameryka/Nowy_Jork”, a następnie wyświetla aktualny czas w określonym formacie:
Przykład
<?php
date_default_timezone_set("America/New_York");
echo "The time is " . date("h:i:sa");
?>
Utwórz datę za pomocą mktime()
Opcjonalny parametr znacznika czasu w funkcji date() określa znacznik czasu. Jeśli zostanie pominięty, zostanie użyta bieżąca data i godzina (jak w powyższych przykładach).
Funkcja PHP mktime()
zwraca uniksowy znacznik czasu dla daty. Znacznik czasu Unix zawiera liczbę sekund między epoką Unix (1 stycznia 1970 00:00:00 GMT) a określonym czasem.
Składnia
mktime(hour, minute, second, month, day, year)
Poniższy przykład tworzy datę i godzinę z
date()
funkcją z szeregu parametrów w
mktime()
funkcji:
Przykład
<?php
$d=mktime(11, 14, 54, 8, 12, 2014);
echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>
Utwórz datę z ciągu za pomocą strtotime()
Funkcja PHP strtotime()
służy do konwersji czytelnego dla człowieka ciągu daty na uniksowy znacznik czasu (liczba sekund od 1 stycznia 1970 00:00:00 GMT).
Składnia
strtotime(time, now)
Poniższy przykład tworzy datę i godzinę z strtotime()
funkcji:
Przykład
<?php
$d=strtotime("10:30pm April 15 2014");
echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>
PHP dość sprytnie zamienia ciąg znaków na datę, więc możesz wpisać różne wartości:
Przykład
<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>
Jednak strtotime()
nie jest idealny, więc pamiętaj, aby sprawdzić, jakie struny tam włożysz.
Więcej przykładów dat
Poniższy przykład wyświetla daty kolejnych sześciu sobót:
Przykład
<?php
$startdate = strtotime("Saturday");
$enddate = strtotime("+6 weeks", $startdate);
while ($startdate < $enddate) {
echo date("M d", $startdate) . "<br>";
$startdate = strtotime("+1 week", $startdate);
}
?>
Poniższy przykład wyświetla liczbę dni do 4 lipca:
Przykład
<?php
$d1=strtotime("July 04");
$d2=ceil(($d1-time())/60/60/24);
echo "There are " . $d2 ." days until 4th of July.";
?>
Pełne odniesienie do daty w PHP
Aby uzyskać pełne informacje o wszystkich funkcjach daty, przejdź do naszego kompletnego podręcznika PHP Date Reference .
Odniesienie zawiera krótki opis i przykłady użycia dla każdej funkcji!