Forum und email
strftime

strftime

(PHP 3, PHP 4, PHP 5)

strftime --  Formatuje lokalnÄ… datÄ™/czas zgodnie z lokalizacjÄ…

Opis

string strftime ( string format [, int znacznik_czasu] )

Zwraca łańcuch znaków sformatowany zgodnie z podanym szablonem formatującym, przy użyciu podanego znacznika czasu lub aktualnego czasu, jeśli znacznik nie jest podany. Nazwy miesięcy, dni tygodnia, itp. respektują ustawienia lokalizacji przy użyciu funkcji setlocale().

Poniższe symbole są rozpoznawane w szablonie formatującym:

  • %a - skrótowa nazwa dnia tygodnia zgodnie z lokalizacjÄ…

  • %A - peÅ‚na nazwa dnia tygodnia zgodnie z lokalizacjÄ…

  • %b - skrótowa nazwa miesiÄ…ca zgodnie z lokalizacjÄ…

  • %B - peÅ‚na nazwa miesiÄ…ca zgodnie z lokalizacjÄ…

  • %c - preferowana reprezentacja daty i czasu zgodnie z lokalizacjÄ…

  • %C - numer wieku (rok podzielony przez 100 i skrócony do liczby caÅ‚kowitej, przedziaÅ‚ od 00 do 99)

  • %d - dzieÅ„ miesiÄ…ca jako liczba dziesiÄ™tna (przedziaÅ‚ od 01 do 31)

  • %D - to samo co %m/%d/%y

  • %e - dzieÅ„ miesiÄ…ca jako liczba dziesiÄ™tna, przy czym pojedyncza cyfra poprzedzona jest spacjÄ… (przedziaÅ‚ od " 1" do "31")

  • %g - tak jak %G, ale bez uwzglÄ™dnienia wieku

  • %G - rok w zapisie czterocyfrowym, powiÄ…zany z numerem tygodnia wg ISO. Symbol ten ma ten sam format i wartość jak %Y, z tym wyjÄ…tkiem, że jeÅ›li numer tygodnia wg ISO należy do poprzedniego lub nastÄ™pnego roku, to poprzedni lub nastÄ™pny rok jest zwracany przez ten symbol.

  • %h - tak jak %b

  • %H - godzina jako liczba dziesiÄ™tna w systemie 24-godzinnym (przedziaÅ‚ od 00 do 23)

  • %I - godzina jako liczba dziesiÄ™tna w systemie 12-godzinnym (przedziaÅ‚ od 01 do 12)

  • %j - dzieÅ„ roku jako liczba dziesiÄ™tna (przedziaÅ‚ od 001 do 366)

  • %m - miesiÄ…c jako liczba dziesiÄ™tna (przedziaÅ‚ od 01 do 12)

  • %M - minuty jako liczba dziesiÄ™tna

  • %n - znak nowej linii

  • %p - albo "am" lub "pm" zgodnie z podanym czasem, albo Å‚aÅ„cuchy znaków odpowiadajÄ…ce lokalizacji

  • %r - czas w notacji a.m. lub p.m.

  • %R - czas w notacji 24-godzinnej

  • %S - sekundy jako liczba dziesiÄ™tna

  • %t - znak tabulacji

  • %T - aktualny czas, odpowiednik %H:%M:%S

  • %u - numer dnia tygodnia jako liczba dziesiÄ™tna [1,7], gdzie 1 oznacza poniedziaÅ‚ek

    Ostrzeżenie

    Sun Solaris podaje niedzielę jako 1, pomimo że ISO 9889:1999 (aktualny standard języka C) jasno określa, że powinien to być poniedziałek.

  • %U - numer tygodnia aktualnego roku jako liczba dziesiÄ™tna, poczÄ…wszy od pierwszej niedzieli jako pierwszego dnia pierwszego tygodnia

  • %V - numer tygodnia aktualnego roku wg ISO 8601:1988 jako liczba dziesiÄ™tna, przedziaÅ‚ od 01 do 53, gdzie tydzieÅ„ 1 jest pierwszym tygodniem, którym ma co najmniej 4 dni w aktualnym roku, przy czym pierwszym dniem tygodnia jest poniedziaÅ‚ek. (Przy użyciu %G lub %g otrzymuje siÄ™ rok, który odpowiada numerowi tygodnia dla podanego znacznika czasu).

  • %W - numer tygodnia aktualnego roku jako liczba dziesiÄ™tna, poczÄ…wszy od pierwszego poniedziaÅ‚ku, jako pierwszego dnia pierwszego tygodnia

  • %w - dzieÅ„ tygodnia jako liczba dziesiÄ™tna, poczÄ…wszy od niedzieli - numer 0

  • %x - preferowana reprezentacja daty, zgodnie z lokalizacjÄ…, bez czasu

  • %X - preferowana reprezentacja czasu, zgodnie z lokalizacjÄ…, bez daty

  • %y - rok jako liczba dziesiÄ™tna, bez uwzglÄ™dnienia wieku (przedziaÅ‚ od 00 do 99)

  • %Y - rok jako liczba dziesiÄ™tna, z wiekiem wÅ‚Ä…cznie

  • %Z - strefa czasowa, nazwa lub skrót

  • %% - znak "%"

Notatka: Nie wszystkie symbole konwersji mogą być obsługiwane przez twoją bibliotekę C, co oznacza, że nie będą obsługiwane przez PHP-owską funkcję strftime(). Oznacza to, że np. %e, %T i %D (oraz być może inne) nie będą funkcjonować w Windows.

Przykład 1. przykład strftime()

setlocale (LC_TIME, "C");
print (strftime ("%A, to w fińskim "));
setlocale (LC_TIME, "fi_FI");
print (strftime ("%A, we francuskim "));
setlocale (LC_TIME, "fr_FR");
print (strftime ("%A, a w niemieckim "));
setlocale (LC_TIME, "de_DE");
print (strftime ("%A.\n"));
Powyższy przykład działa, jeśli masz zainstalowane w swoim systemie odpowiednie lokale.

Patrz także setlocale() i mktime() oraz Otwarta Specyfikacja Grupowa strftime().