From baf795fa007daedf30979addea340d770ed554f3 Mon Sep 17 00:00:00 2001 From: Maciej Sobaczewski Date: Sat, 18 May 2024 04:44:06 +0200 Subject: [PATCH] Sync reference/datetime/functions/ with En --- reference/datetime/functions/getdate.xml | 35 +++- reference/datetime/functions/gettimeofday.xml | 37 +---- reference/datetime/functions/gmdate.xml | 32 ++-- reference/datetime/functions/gmmktime.xml | 79 ++++----- reference/datetime/functions/gmstrftime.xml | 73 ++++++--- reference/datetime/functions/localtime.xml | 143 +++++++++-------- reference/datetime/functions/microtime.xml | 46 ++---- reference/datetime/functions/mktime.xml | 151 ++++++------------ reference/datetime/functions/strftime.xml | 69 +++++--- reference/datetime/functions/strtotime.xml | 123 ++++---------- reference/datetime/functions/time.xml | 68 ++++---- 11 files changed, 385 insertions(+), 471 deletions(-) diff --git a/reference/datetime/functions/getdate.xml b/reference/datetime/functions/getdate.xml index 9b79a884..5715ef30 100755 --- a/reference/datetime/functions/getdate.xml +++ b/reference/datetime/functions/getdate.xml @@ -1,5 +1,5 @@ - + @@ -12,12 +12,12 @@ &reftitle.description; arraygetdate - intznacznik_czasutime() + intnulltimestamp&null; Funkcja zwraca tablicę (array) asocjacyjną zawierającą informacje o dacie podanej - jako znacznik_czasu, lub o aktualnej dacie, jeśli - nie podano parametru znacznik_czasu. + jako timestamp, lub o aktualnej dacie, jeśli + parametr timestamp został pominięty lub ustawiony na &null;. @@ -36,7 +36,7 @@ &reftitle.returnvalues; Zwraca asocjacyjną tablicę (array) z informacjami zależnymi - od podanego parametru znacznik_czasu. Zwrócona tablica + od podanego parametru timestamp. Zwrócona tablica zawiera następujące elementy: @@ -118,6 +118,30 @@ + + &reftitle.changelog; + + + + + + &Version; + &Description; + + + + + 8.0.0 + + Parametr timestamp akceptuje teraz &null;. + + + + + + + + &reftitle.examples; @@ -167,7 +191,6 @@ Array - + @@ -11,12 +11,12 @@ &reftitle.description; - mixedgettimeofday - boolreturn_float&false; + arrayfloatgettimeofday + boolas_float&false; Jest to interfejs do gettimeofday(2). Funkcja zwraca tablicę - asocjacyjną zawierającą dane odebrane z wywołania systemowego. + asocjacyjną, zawierającą dane odebrane z wywołania systemowego. @@ -25,7 +25,7 @@ - return_float + as_float Jeżeli ustawione na &true;, zwracana jest liczba zmiennoprzecinkowa zamiast tablicy. @@ -40,7 +40,7 @@ &reftitle.returnvalues; Domyślnie zwracany jest typ array. Jeżeli ustawiono parametr - return_float, to zwracana jest liczba zmiennoprzecinkowa. + as_float, to zwracana jest liczba zmiennoprzecinkowa. Klucze tablicy: @@ -69,30 +69,6 @@ - - &reftitle.changelog; - - - - - - &Version; - &Description; - - - - - 5.1.0 - - Dodano parametr return_float. - - - - - - - - &reftitle.examples; @@ -125,7 +101,6 @@ Array - + @@ -13,10 +13,10 @@ stringgmdate stringformat - intznacznik_czasutime() + intnulltimestamp&null; - Identyczna do funkcji date, z wyjątkiem tego, że + Identyczna z funkcją date, z tym że zawsze podaje czas Greenwich (Greenwich Mean Time - GMT). @@ -44,10 +44,7 @@ &reftitle.returnvalues; - Zwraca sformatowany łańcuch daty. Jeżeli jako parametr - znacznik_czasu podano wartość nienumeryczną, - to zwracane jest &false; i generowany jest błąd o poziomie - E_WARNING. + Zwraca sformatowany łańcuch daty. @@ -64,21 +61,9 @@ - 5.1.0 + 8.0.0 - Poprawnym zakres znacznika czasu to zazwyczaj od Fri, 13 Dec - 1901 20:45:54 GMT do Tue, 19 Jan 2038 03:14:07 GMT. (Są to daty - odpowiedające minimalnym i maksymalnym wartościom 32-bitowego integera - ze znakiem). Jednakże, przed PHP 5.1.0 ten zakres był ograniczony - od 01-01-1970 do 19-01-2038 na niektórych systemach (np. Windows). - - - - 5.1.1 - - Dodano przydatne stałe - typowych formatów daty/czasu, które mogą być użyte do określenia - parametru format. + Parametr timestamp akceptuje teraz &null;. @@ -112,15 +97,16 @@ echo gmdate("M d Y H:i:s", mktime(0, 0, 0, 1, 1, 1998)); &reftitle.seealso; + DateTimeImmutable::__construct + DateTimeInterface::format date mktime gmmktime - strftime + IntlDateFormatter::format - + @@ -11,14 +11,13 @@ &reftitle.description; - intgmmktime - intgodzinagmdate("H") - intminutagmdate("i") - intsekundagmdate("s") - intmiesiącgmdate("n") - intdzieńgmdate("j") - introkgmdate("Y") - intczy_letni-1 + intfalsegmmktime + inthour + intnullminute&null; + intnullsecond&null; + intnullmonth&null; + intnullday&null; + intnullyear&null; Identyczna z funkcją mktime, z tą różnicą, że przekazane parametry @@ -26,10 +25,15 @@ więc można użyć tylko czasów poprawnych w czasie lokalnym. - Tak jak w mktime, argumenty mogą być pomijane + Tak jak w mktime, opcjonalne argumenty mogą być pomijane w kolejności od prawej do lewej, gdyż zostaną one ustawione na obecne wartości w czasie GMT. + + Wywołanie gmmktime bez żadnych argumentów nie jest + wspierane i będzie skutkować błędem ArgumentCountError. + Aby pobrać obecny znacznik czasu, można skorzystać z funkcji time. + @@ -37,38 +41,38 @@ - godzina + hour - Liczba godzin relatywna do rozpoczęcia dnia określonego przez - miesiąc, dzień i rok. + Liczba godzin relatywna do rozpoczęcia dnia określonego przez parametry + month, day i year. Ujemne wartości odnoszą się do godzin przed północą zażądanego dnia. Wartości większe niż 23 odnoszą się do odpowiednich godzin w kolejnym dniu/dniach. - minuta + minute - Liczba minut względem początku godziny. + Liczba minut względem początku godziny podanej w hour. Wartości ujemne oznaczają minutę w poprzedniej godzinie. Wartości większe niż 59 oznaczają opowiednią minutę w kolejnej godzinie/godzinach. - sekunda + second - Liczba sekund względem początku minuty. + Liczba sekund względem początku minuty (minute). Wartości ujemne oznaczają sekundę w poprzedniej minucie. - Wartości większe niż 59 oznaczają opowiednią sekundę w kolejnej minucie/minutach. + Wartości większe niż 59 oznaczają odpowiednią sekundę w kolejnej minucie/minutach. - miesiąc + month Numer miesiąca liczony względem końca poprzedniego roku. @@ -79,7 +83,7 @@ - dzień + day Liczba dni względem końca poprzedniego miesiąca. @@ -90,27 +94,13 @@ - rok + year Rok - - czy_letni - - - Parametry zawsze reprezentują czas GMT, więc parametr czy_letni - nie ma wpływu na wynik. - - - - Ten parametr został usunięty w PHP 7.0.0. - - - - @@ -118,7 +108,8 @@ &reftitle.returnvalues; - Zwraca integer będący uniksowym znacznikiem czasu. + Zwraca liczbę całkowitą (int) będącą uniksowym znacznikiem czasu w wypadku powodzenia + lub &false; jeśli zwrócony znacznik czasu nie mieściłby się w zakresie liczb całkowitych obsługiwanych przez PHP. @@ -134,18 +125,18 @@ - - 7.0.0 + + 8.0.0 - Parametr czy_letni został usunięty. + Parametr hour nie jest już opcjonalny. Jeśli potrzebujesz uniksowego + znacznika czasu, skorzystaj z funkcji time. - 5.1.0 + 8.0.0 - Od PHP 5.1.0, parametr czy_letni został zdeprecjonowany. - W wyniku tego, w zamian powinno się używać nowych możliwości obsługi stref - czasowych. + Parametry minute, second, month, + day oraz year akceptują teraz &null;. @@ -175,6 +166,7 @@ echo "Pierwszy lipca 2000 wypada w: " . date("l", gmmktime(0, 0, 0, 7, 1, 2000)) &reftitle.seealso; + Klasa DateTimeImmutable mktime date time @@ -182,7 +174,6 @@ echo "Pierwszy lipca 2000 wypada w: " . date("l", gmmktime(0, 0, 0, 7, 1, 2000)) - + - - - gmstrftime - Formatuje czas/datę ze strefy GMT/UTC zgodnie z - lokalizacją - + + + gmstrftime + Formatuje czas/datę ze strefy GMT/UTC zgodnie z ustawieniami locale + + + + &warn.deprecated.function-8-1-0.alternatives; + + gmdate + IntlDateFormatter::format + + &reftitle.description; - - stringgmstrftime - stringformat - intznacznik_czasutime() - - - Zachowuje się identycznie jak strftime z tym - wyjątkiem, że zwracany jest czas strefy Greenwich (Greenwich Mean Time - - GMT). Na przykład, uruchomiona we Wschodnim Czasie Standardowym - (GMT -0500) pierwsza linia poniżej wyświetla "Dec 31 1998 20:00:00", - podczas gdy druga "Jan 01 1999 01:00:00". - + + stringfalsegmstrftime + stringformat + intnulltimestamp&null; + + + Zachowuje się identycznie jak strftime z tym + wyjątkiem, że zwracany jest czas strefy Greenwich (Greenwich Mean Time - + GMT). Na przykład, uruchomiona we Wschodnim Czasie Standardowym + (GMT -0500) pierwsza linia poniżej wyświetla "Dec 31 1998 20:00:00", + podczas gdy druga "Jan 01 1999 01:00:00". + @@ -50,6 +57,31 @@ czasu lokalnego, jeżeli nie podano znacznika. Nazwy miesięcy, dni tygodnia i innych ciągów zależnych od języka, bazują na obecnej lokalizacji ustawionej funkcją setlocale. + W wypadku błędu zwracane jest &false;. + + + + + &reftitle.changelog; + + + + + + &Version; + &Description; + + + + + 8.0.0 + + Parametr timestamp akceptuje teraz &null;. + + + + + @@ -75,12 +107,13 @@ echo gmstrftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n"; &reftitle.seealso; + IntlDateFormatter::format + DateTimeInterface::format strftime - + @@ -12,12 +12,12 @@ &reftitle.description; arraylocaltime - intznacznik_czasutime() - boolasocjacyjna&false; + intnulltimestamp&null; + boolassociative&false; Funkcja localtime zwraca tablicę - identyczną do tej zwracanej przez wywołanie identycznej + identyczną, do tej zwracanej przez wywołanie identycznej funkcji w C. @@ -30,66 +30,11 @@ &date.timestamp.description; - asocjacyjna + associative - Jeżeli ustawiono &false; lub nie podano, to tablica jest zwracana jako, - zwykła tablica indeksowana numerycznie. Jeżeli parametr ustawiono na &true;, to - localtime zwraca tablicę wielowymiarową zawierającą - rozmaite elementy struktury zwracanej przez wywołanie funkcji localtime w C - Nazwy różnych kluczy z tej tablicy są następujące: - - - - - - "tm_sec" - sekundy 0 do 59 - - - - - "tm_min" - minuty, 0 do 59 - - - - - "tm_hour" - godziny, 0 do 23 - - - - - "tm_mday" - dzień miesiąca, 1 do 31 - - - - - "tm_mon" - miesiąc roku, 0 (styczeń) do 11 (grudzień) - - - - - "tm_year" - ilość lat od 1900 - - - - - "tm_wday" - dzień tygodnia, 0 (niedziela) do 6 (sobota) - - - - - "tm_yday" - dzień roku, 0 do 365 - - - - - "tm_isdst" - czy trwa czas letni? - - - Liczba dodatnia, jeżeli tak, 0 jeżeli nie, ujemna jeżeli nie wiadomo. - - - + Decyduje czy funkcja powinna zwrócić normalną tablicę indeksowaną numerycznie, + czy tablicę asocjacyjną. @@ -97,6 +42,70 @@ + + &reftitle.returnvalues; + + Jeżeli parametr associative ustawiono &false; lub nie podano, + to tablica jest zwracana jako, zwykła tablica indeksowana numerycznie. + Jeżeli parametr associative ustawiono na &true;, to + localtime zwraca tablicę wielowymiarową zawierającą + rozmaite elementy struktury zwracanej przez wywołanie funkcji localtime w C + Nazwy różnych kluczy z tej tablicy są następujące: + + + + + + "tm_sec" - sekundy 0 do 59 + + + + + "tm_min" - minuty, 0 do 59 + + + + + "tm_hour" - godziny, 0 do 23 + + + + + "tm_mday" - dzień miesiąca, 1 do 31 + + + + + "tm_mon" - miesiąc roku, 0 (styczeń) do 11 (grudzień) + + + + + "tm_year" - ilość lat od 1900 + + + + + "tm_wday" - dzień tygodnia, 0 (niedziela) do 6 (sobota) + + + + + "tm_yday" - dzień roku, 0 do 365 + + + + + "tm_isdst" - czy trwa czas letni? + + + Liczba dodatnia, jeżeli tak, 0 jeżeli nie, ujemna jeżeli nie wiadomo. + + + + + + &reftitle.errors; @@ -116,9 +125,12 @@ - - &date.timezone.errors.changelog; - + + 8.0.0 + + Parametr timestamp akceptuje teraz &null;. + + @@ -184,7 +196,6 @@ Array - + @@ -11,14 +11,17 @@ &reftitle.description; - mixedmicrotime - boolget_as_float&false; + stringfloatmicrotime + boolas_float&false; microtime zwraca aktualny znacznik czasu Uniksa z mikrosekundami. Ta funkcja jest dostępna tylko na systemach, które umożliwiają wywołanie systemowe gettimeofday(). + + Do mierzenia wydajności rekomendowane jest użycie hrtime. + @@ -26,7 +29,7 @@ - get_as_float + as_float Jeżeli użyto i ustawiono na &true;, microtime zwróci @@ -46,10 +49,10 @@ w postaci "msek sek", gdzie sek to liczba sekund, które upłynęły od epoki Uniksa (1 stycznia 1970 00:00:00 GMT), a msek, to liczba sekund, które upłynęły od sek, - która także wyrażona jest w sekundach. + która także wyrażona jest w sekundach jako ułamek dziesiętny. - Jeżeli get_as_float ustawiono na &true;, to + Jeżeli as_float ustawiono na &true;, to microtime zwraca float, który reprezentuje obecny czas w sekundach do epoki Uniksa, z dokładnością do najbliższej mikrosekundy. @@ -60,34 +63,7 @@ &reftitle.examples; - Mierzenie czasu pracy skryptu dzięki <function>microtime</function> - - -]]> - - - - Mierzenie czasu pracy skryptu w PHP 5 + Mierzenie czasu pracy skryptu - + @@ -11,14 +11,13 @@ &reftitle.description; - intmktime - intgodzinadate("H") - intminutadate("i") - intsekundadate("s") - intmiesiącdate("n") - intdzieńdate("j") - introkdate("Y") - intczy_letni-1 + intfalsemktime + inthour + intnullminute&null; + intnullsecond&null; + intnullmonth&null; + intnullday&null; + intnullyear&null; Zwraca uniksowy znacznik czasu dla podanych argumentów. @@ -27,21 +26,28 @@ czasem. - Argumenty mogą być pomijane w kolejności od prawej do lewej, - gdyż zostaną one ustawione na obecną wartość w lokalnej + Wszystkie opcjonalne + argumenty, które zostaną pominięte lub ustawione na &null; zostaną one ustawione na obecną wartość w lokalnej dacie i czasie. &reftitle.notes; - + - Od PHP 5.1, gdy wywołane bez argumentów, mktime - tworzy komunikat E_STRICT: użyj funkcji - time w takim wypadku. + Zwróć uwagę, że argumenty występują w dziwnej kolejności: + month, day, + year, a nie bardziej sensownej jak np. + year, month, + day. - + + + Wywołanie mktime bez żadnych argumentów nie jest + wspierane i będzie skutkować błędem ArgumentCountError. + Aby pobrać obecny znacznik czasu, można skorzystać z funkcji time. + @@ -49,38 +55,38 @@ - godzina + hour - Liczba godzin relatywna do rozpoczęcia dnia określonego przez - miesiąc, dzień i rok. + Liczba godzin relatywna do rozpoczęcia dnia określonego przez parametry + month, day i year. Ujemne wartości odnoszą się do godzin przed północą zażądanego dnia. Wartości większe niż 23 odnoszą się do odpowiednich godzin w kolejnym dniu/dniach. - minuta + minute - Liczba minut względem początku godziny. + Liczba minut względem początku godziny (hour). Wartości ujemne oznaczają minutę w poprzedniej godzinie. Wartości większe niż 59 oznaczają opowiednią minutę w kolejnej godzinie/godzinach. - sekunda + second - Liczba sekund względem początku minuty. + Liczba sekund względem początku minuty (minute). Wartości ujemne oznaczają sekundę w poprzedniej minucie. - Wartości większe niż 59 oznaczają opowiednią sekundę w kolejnej minucie/minutach. + Wartości większe niż 59 oznaczają odpowiednią sekundę w kolejnej minucie/minutach. - miesiąc + month Numer miesiąca liczony względem końca poprzedniego roku. @@ -91,7 +97,7 @@ - dzień + day Liczba dni względem końca poprzedniego miesiąca. @@ -102,46 +108,17 @@ - rok + year Numer roku, może być dwu- lub czterocyfrowy, gdzie wartości 0-69 są mapowane do 2000-2069, a 70-100 do 1970-2000. Na systemach, gdzie time_t 32bitowym integerem ze znakiem, tak - jak zazwyczaj dzisiaj, poprawny zakres dla parametru rok - wynosi mniej więcej od 1901 do 2038. Jednakże przed PHP 5.1.0 ten - zakres był ograniczony od 1970 do 2038 na niektórych systemach (np. Windows). + jak zazwyczaj dzisiaj, poprawny zakres dla parametru year + wynosi mniej więcej od 1901 do 2038. - - czy_letni - - - Można ustawić ten parametr na 1, jeżeli czas jest w ramach czasu letniego, - 0 jeśli nie jest lub -1 (domyślnie) jeżeli nie wiadomo czy czas jest w czasie - letnim, czy nie. Jeżeli tego nie wiadomo, to PHP próbuje sam to sprawdzić. - Może to spowodować powstanie niespodziewanych (ale nie niepoprawnych) wyników. - Niektóre czasy są niepoprawne jeżeli w systemie włączony jest czas letni lub - czy_letni jest ustawiony na 1. Jeżeli włączony jest czas letni o - godzinie np 2:00, to wszystkie czasy pomiędzy 2:00 i 3:00 są niepoprawne i mktime - zwraca nieokreśloną (zazwyczaj ujemną) wartość. - Niektóre systemy (np. Solaris 8) włączają czas letni od północy, więc godzina 0:30 dnia, w którym - aktywowano czas letni, jest rozpoznawana jako 23:30 dnia poprzedniego. - - - - Od PHP 5.1.0 ten parametr został zdeprecjonowany. W wyniku tego, w zamian powinno się używać nowych - możliwości obsługi stref czasowych. - - - - - Ten parametr został usunięty w PHP 7.0.0. - - - - @@ -150,18 +127,11 @@ &reftitle.returnvalues; - mktime zwraca uniksowy znacznik czasu dla podanych - argumentów. - Jeżeli argumenty są niepoprawne, funkcja zwraca &false; (przed PHP 5.1 - zwracała -1). + mktime zwraca uniksowy znacznik czasu dla podanych argumentów + lub &false; jeśli zwrócony znacznik czasu nie mieściłby się w zakresie liczb całkowitych obsługiwanych przez PHP. - - &reftitle.errors; - &date.timezone.errors.description; - - &reftitle.changelog; @@ -175,39 +145,19 @@ - 7.0.0 - - Parametr czy_letni został usunięty. - - - - 5.3.0 + 8.0.0 - mktime zgłasza komunikat E_DEPRECATED - jeżeli użyto parametru czy_letni. + Parametr hour nie jest już opcjonalny. Jeśli potrzebujesz uniksowego + znacznika czasu, skorzystaj z funkcji time. - 5.1.0 + 8.0.0 - Parametr czy_letni został zdeprecjonowany. - Funkcja zwraca &false; w wypadku błędu, a nie -1, - jak wcześniej. - Naprawiono funkcję, aby akceptowała rok, miesiąc i dzień przekazane - jako zero. + Parametry minute, second, month, + day oraz year akceptują teraz &null;. - - 5.1.0 - - Gdy wywoływana bez argumentów, mktime tworzy - komunikat E_STRICT. Zamiast tego użyj funkcji - time. - - - - &date.timezone.errors.changelog; - @@ -222,7 +172,7 @@ - - &reftitle.notes; - - - Przed PHP 5.1.0 ujemne znaczniki czasu nie były obsługiwane na żadnej znanej - wersji systemu Window i w niektórych innych systemach. Z tego powodu zakres - poprawnych lat był ograniczony od 1970 do 2038. - - - - &reftitle.seealso; + Klasa DateTimeImmutable checkdate gmmktime date @@ -301,7 +241,6 @@ echo strftime("Ostatni dzień w lutym 2000 to: %d", $lastday); - + @@ -8,29 +8,39 @@ Formatuje lokalną datę/czas zgodnie z lokalizacją + + &warn.deprecated.function-8-1-0.alternatives; + + date + IntlDateFormatter::format + + + &reftitle.description; - stringstrftime + stringfalsestrftime stringformat - intznacznik_czasutime() + intnulltimestamp&null; Formatuje datę i lub/czas zgodnie z ustawieniami lokalizacji. Nazwy miesięcy i i dni tygodnia oraz inne ciągi zależne od języka, przestrzegają obecnej lokalizacji ustawionej przez setlocale. - - Nie wszystkie symbole konwersji mogą być wspierane przez Twoją bibliotekę C i w takim - wypadku nie będą wspierane przez funkcję strftime z PHP. - Ponadto, nie wszystkie platformy wspierają ujemne zaczniki czasu, więc zakres - dat może być ograniczony do początku epoki Uniksa. Oznacza to, że - %e, %T, %R i %D (oraz możliwe, że inne) - tak samo jak daty przed - 01.01.1970 - to wszystko nie zadziała na Windows, niektórych - dystrybucjach Linuksa i kilku innych systemach operacyjnych. Przegląd symboli - konwersji wspieranych przez system Windows można znaleźć na - MSDN. - + + + Nie wszystkie symbole konwersji mogą być wspierane przez Twoją bibliotekę C i w takim + wypadku nie będą wspierane przez funkcję strftime z PHP. + Ponadto, nie wszystkie platformy wspierają ujemne zaczniki czasu, więc zakres + dat może być ograniczony do początku epoki Uniksa. Oznacza to, że + %e, %T, %R i %D (oraz możliwe, że inne) - tak samo jak daty przed + 01.01.1970 - to wszystko nie zadziała na Windows, niektórych + dystrybucjach Linuksa i kilku innych systemach operacyjnych. Przegląd symboli + konwersji wspieranych przez system Windows można znaleźć na + MSDN. + + @@ -211,12 +221,17 @@ %p 'AM' lub 'PM' zapisane wielkimi literami, zależnie od podanego czasu - Przykład: AM dla 00:31, PM dla 22:23 + Przykład: AM dla 00:31, + PM dla 22:23. Dokładny wynik zależy od + systemu operacyjnego, może zostać zwrócony zapis małymi literami lub + zapis z kropkami (tj. a.m.) %P 'am' lub 'pm' zapisane malymi literami, zależnie od podanego czasu - Przykład: am dla 00:31, pm dla 22:23 + Przykład: am dla 00:31, + pm dla 22:23. Nie jest wspierane przez wszystkie systemy + operacyjne. %r @@ -310,9 +325,6 @@ - - Maksymalna długość tego parametru to 1023 znaki. - W przeciwieństwie do ISO-9899:1999, system Sun Solaris podaje niedzielę jako 1. W wyniku @@ -337,7 +349,7 @@ - Tylko dla macOS: Modyfikator %P nie jest + Tylko dla macOS i musl: Modyfikator %P nie jest wspierany w implementacji tej funkcji dla macOS. @@ -356,8 +368,11 @@ Zwraca łańcuch znaków sformatowany zgodnie z argumentem format używając czasu podanego jako znacznik_czasu lub obecnego czasu lokalnego, jeśli nie podano tego argumentu. Nazwy miesięcy i dni tygodnia oraz - inne łańcuch zależne od języka uwzględniają obecną lokalizację ustawioną + inne ciągi znaków zależne od języka uwzględniają obecną lokalizację ustawioną przez setlocale. + Funkcja zwraca &false; jeśli format jest pusty, zawiera niewspierane + modyfikatory konwersji lub jeśli zwrócony ciąg znaków byłby dłuższy niż + 4095 znaków. @@ -386,9 +401,12 @@ - - &date.timezone.errors.changelog; - + + 8.0.0 + + Parametr timestamp akceptuje teraz &null;. + + @@ -660,6 +678,8 @@ Unknown format : 'v' &reftitle.seealso; + IntlDateFormatter::format + DateTimeInterface::format Narzędzie online do tworzenia formatów strftime() setlocale mktime @@ -670,7 +690,6 @@ Unknown format : 'v' - + @@ -11,17 +11,26 @@ &reftitle.description; - intstrtotime - stringczas - intteraztime() + intfalsestrtotime + stringdatetime + intnullbaseTimestamp&null; Funkcja oczekuje tekstu zawierającego datę w formacie angielskim i stara się przeliczyć ją na uniksowy znacznik czasu (liczbę sekund od 01.01.1970 00:00:00 UTC), relatywnie do znacznika czasu podanego w - teraz, lub aktualnego czasu, - jeśli znacznik nie zostanie podany. + baseTimestamp lub aktualnego czasu, + jeśli znacznik nie zostanie podany. Parsowanie łańcucha daty + zostało opisane w sekcji formaty daty i czasu i + ma kilka drobnych niuansów. Stanowczo zalecamy przejrzenie szczegółów na ten temat. + + + Znacznik czasu Uniksa zwracany przez tę funkcję nie zawiera informacji + na temat stref czasowych. W celu dokonywania obliczeń na dacie/czasie + powinieneś użyć DateTimeImmutable. + + Każdy z parametrów tej funkcji korzysta z domyślnej strefy czasowej dopóki nie określono jej w tym parametrze. Uważaj, żeby nie użyć @@ -36,13 +45,13 @@ - czas + datetime &date.formats.parameter; - teraz + baseTimestamp Znacznik czasu używany jako podstawa do wyliczania dat @@ -57,8 +66,7 @@ &reftitle.returnvalues; - Zwraca znacznik czasu, gdy operacja się powiedzie, &false; w przeciwnym wypadku. Przed wersją PHP 5.1.0, - ta funkcja zwracała -1 w wypadku błędu. + Zwraca znacznik czasu, gdy operacja się powiedzie, &false; w przeciwnym wypadku. @@ -82,56 +90,9 @@ - 5.3.0 - - Przed wersją PHP 5.3.0, względne formaty czasu przekazane do parametru - czas funkcji strtotime, - takie jak this week, previous week, - last week i next week były - interpretowane jako siedmiodniowy okres relatywny do obecnej chwili, a nie - okres tygodnia od poniedziałku do niedzieli. - - - - 5.3.0 - - Przed wersją PHP 5.3.0, 24:00 nie była poprawnym formatem i - strtotime zwracała &false;. - - - - 5.2.7 + 8.0.0 - Przed wersją PHP 5.2.7, żądanie danego wystąpienia danego - dnia tygodnia w miesiącu, gdy ten dzień tygodnia był pierwszym - dniem miesiąca, powodowało niepoprawne dodanie jednego tygodnia do - zwracanego znacznika. Zostało to poprawione w wersji 5.2.7 i - późniejszych. - - - - 5.1.0 - - Funkcja zwraca &false; w wypadku błędu, zamiast - -1. - - - - &date.timezone.errors.changelog; - - - 5.0.2 - - Do wersji PHP 5.0.2, "now" i inne - czasy relatywne były źle obliczane względem północy obecnego - dnia. W innych wersjach jest już to obliczane poprawnie - względem obecnego czasu. - - - - 5.0.0 - - Mikrosekundy stały się dozwolone, ale są ignorowane. + Parametr baseTimestamp akceptuje teraz &null;. @@ -168,7 +129,6 @@ echo strtotime("last Monday"), "\n"; &reftitle.notes; + + + Data "relatywna" w wypadku tej funkcji oznacza, że jeśli określony komponent + daty/czasu nie został podany, to będzie on wyliczony względem wartości parametru + baseTimestamp. To znaczy że wywołanie strtotime('February'), + dnia 31. maja 2022 zostanie zinterpretowane jako 31 February 2022, + które przepełni zakres dla lutego, a więc zwróci 3 March. + (w roku przestępnym zwrócone zostałoby 2 March). Użycie + strtotime('1 February') lub strtotime('first day of February') + pozwala uniknąć tego problemu. + + Jeżeli rok określono w formacie dwucyfrowym, wartości pomiędzy @@ -198,42 +170,17 @@ if (($timestamp = strtotime($str)) === false) { odpowiadające minimalnej i maksymalnej wartości dla 32-bitowej liczby całkowitej ze znakiem). - - Do PHP 5.1.0, nie wszystkie platformy wspierały ujemne zaczniki czasu, więc - zakres dat mógł być ograniczony do początku epoki Uniksa. Oznacza to, - że np. daty wcześniejsze niż 01.01.1970 nie będą działać na Windows, - niektórych dystrybucjach Linuksa i kilku innych systemach. - W 64-bitowych wersjach PHP, poprawny zakres znaczników czasu jest niemalże nieskończony, gdyż 64 bity mogą przedstawiać około 293 miliardy lat w obu kierunkach. - - - Daty w formatach m/d/y i d-m-y - są rozróżniane poprzez sprawdzanie separatora pomiędzy ich - komponentami: jeżeli separatorem jest ukośnik (/), to - przyjmowany jest format amerykański m/d/y, a gdy separatorem - jest myślnik (-) lub kropka (.), to - przyjmowany jest format europejski d-m-y. - Jeśli jednak rok jest podany w formacie dwucyfrowym a separatorem jest - myślnik (-), łańcuch daty jest parsowany jako - y-m-d. - - - Aby uniknąć możliwych niejednoznaczności, najlepiej jest użyć dat ISO 8601 - (YYYY-MM-DD) lub - DateTime::createFromFormat, gdy jest to możliwe. - - Użycie tej funkcji dla operacji matematycznych jest niezalecane. Lepiej użyć DateTime::add oraz - DateTime::sub w PHP 5.3 i późniejszych lub - DateTime::modify w PHP 5.2. + DateTime::sub. @@ -242,15 +189,15 @@ if (($timestamp = strtotime($str)) === false) { &reftitle.seealso; + DateTimeImmutable + DateTimeImmutable::createFromFormat Formaty daty i czasu - DateTime::createFromFormat checkdate strptime - + - - - time - Zwraca aktualny uniksowy znacznik czasu - + + + time + Zwraca aktualny uniksowy znacznik czasu + - - &reftitle.description; - - inttime - - - - Zwraca aktualny czas, podawany jako liczba sekund, które upłynęły od - uniksowej Epoki (1 stycznia 1970 00:00:00 GMT). - + + &reftitle.description; + + inttime + + + + Zwraca aktualny czas, podawany jako liczba sekund, które upłynęły od + uniksowej Epoki (1 stycznia 1970 00:00:00 GMT). + + + + Znacznik czasu Uniksa nie zawiera informacji na temat strefy czasowej. + Zalecane jest użycie klasy + DateTimeImmutable do obsługi daty i czasu, + aby uniknąć pułapek czyhających w wypadku użycia znaczków czasu + Uniksa. + + + + + + &reftitle.parameters; + &no.function.parameters; + + + + &reftitle.returnvalues; + + Returns the current timestamp. + @@ -27,21 +48,14 @@ ]]> &example.outputs.similar; @@ -53,7 +67,7 @@ Za tydzień: 2005-04-06 Znacznik czasu rozpoczęcia żądania jest dostępny w - $_SERVER['REQUEST_TIME'] od PHP 5.1. + $_SERVER['REQUEST_TIME']. @@ -62,6 +76,7 @@ Za tydzień: 2005-04-06 &reftitle.seealso; + DateTimeImmutable date microtime @@ -69,7 +84,6 @@ Za tydzień: 2005-04-06 -