PHP - strftime

 

PHP -> Funkcie -> Dátum a čas funkcie PHP -> funkcia strftime

Syntax


string strftime(string format, int timestamp);

Popis


Príkaz jazyka PHP
strftime - Sformátovať miestny čas/dátum podľa miestnych nastavení

Vracia reťazec sformátovaný podľa daného formátovacieho reťazca pomocou daného timestampu alebo aktuálneho miestneho času, ak nie je daný žiadny timestamp. Názvy mesiacov a dní v týždni a reťazce iných jazykových závislosti berú ohľad na aktuálne miestne nastavenie s setlocale().

Následujúce konverzné špecifikátory sa rozpoznávajú vo formátovacom reťazci:
  • %a - skrátený názov dňa podľa aktuálnej lokály
  • %A - plný názov dňa podľa aktuálnej lokály
  • %b - skrátený názov mesiaca podľa aktuálnej lokály
  • %B - plný názov mesiaca podľa aktuálnej lokály
  • %c - preferovaná reprezentácia dátumu a času pre aktuálnu lokálu
  • %C - číslo storočia (rok sa vydelí 100 a skráti sa na integer, rozsah 00 až 99)
  • %d - deň v mesiaci ako desatinné číslo (rozsah 01 až 31)
  • %D - to isté ako %m/%d/%y
  • %e - deň v mesiaci ako desatinné číslor, pred jednu číslicu sa pridá medzera (rozsah ' 1' až '31')
  • %g - ako %G, len bez storočia.
  • %G - 4-číselný rok zodpovedajúci číslu týždňa ISO (pozri %V). Má rovnaký formát a hodnotu ako %Y, až na to, že ak číslo týždňa ISO patrí k predchádzajúcemu alebo následujúcemu roku, použije sa ten rok miesto neho.
  • %h - to isté ako %b
  • %H - hodina ako desatinné číslo v tvare 24-hodinových hodín (rozsah 00 až 23)
  • %I - hodina ako desatinné číslo v tvare 12-hodinových hodín (rozsah 01 až 12)
  • %j - deň v roku ako desatinné číslo (rozsah 001 až 366)
  • %m - mesiac ako desatinné číslo (rozsah 01 až 12)
  • %M - minúta ako desatinné číslo
  • %n - znak nového riadku
  • %p - buď `am' alebo `pm' podľa danej časovej hodnoty, alebo zodpovedajúce reťazce podľa miestnej lokály
  • %r - čas v a.m. a p.m. notácii
  • %R - čas v 24 hodinovej notácii
  • %S - sekundy ako desatinné číslo
  • %t - znak tab
  • %T - aktuálny čas, rovný s %H:%M:%S
  • %u - deň v týždni ako desatinné číslo [1,7], s 1 reprezetujúcou Pondelok ; Varovanie: Sun Solaris začína s Nedeľou ako 1, i keď ISO 9889:1999 (aktuálny C štandard) jasne určuje, že by to mal byť Pondelok.
  • %U - číslo týždňa v aktuálnom roku ako desatinné číslo, počínajúc s prvou Nedeľou ako prvým dňom v prvom týždni week
  • %V - ISO 8601:1988 číslo týždňa v akutuálnom roku ako desatinné číslo, rozsah 01 až 53, kde týždeňk 1 je prvým týždňom, ktorý má najmenej 4 dni v akutálnom roku a s Pondelkom ako prvým dňom v týždni. (Používajte %G alebo %g pre komponentu roka, ktorá zodpovedá číslu týždňa pre určený timestamp.)
  • %W - číslo týždňa aktuálneho roka ako desatinné číslo, počínajúc s prvým Pondelkom ako prvým dňom v prvom týždni
  • %w - deň v týždni ako desatinné číslo, Nedeľa je 0
  • %x - preferovaná reprezentácia dátumu pre aktuálnu lokálu bez času
  • %X - preferovaná reprezentácia času pre aktuálnu lokálu bez dátumu
  • %y - rok ako desatinné číslo bez storočia (rozsah 00 až 99)
  • %Y - rok ako desatinné číslo vrátane storočia
  • %Z - časová zóna alebo názov alebo skratka
  • %% - znak `%'


Príklady



//This example works if you have the respective locales installed in your system.

setlocale ("LC_TIME", "C");
print(strftime("%A in Finnish is "));
setlocale ("LC_TIME", "fi");
print(strftime("%A, in French "));
setlocale ("LC_TIME", "fr");
print(strftime("%A and in German "));
setlocale ("LC_TIME", "de");
print(strftime("%A.\n"));

Tento príklad funguje iba ak máte patričné lokály vo vašom systéme naištalované.

Poznámka: %G a %V, ktoré sú založené na ISO 8601:1988 číslach týždňov, môžu podať neočakávané výsledky, ak nie je číselný systém správne chápaný. Pozri %V vyššie a príklad uvedený nižšie.

Príklad číslovania týždňov ISO 8601:1988
<?php
/*     December 2002 / Januar 2003
ISOWk  M   Tu  W   Thu F   Sa  Su
----- ----------------------------
51     16  17  18  19  20  21  22
52     23  24  25  26  27  28  29
1      30  31   1   2   3   4   5
2       6   7   8   9  10  11  12
3      13  14  15  16  17  18  19   */


// Vypise: 12/28/2002 - %V,%G,%Y = 52,2002,2002
print "12/28/2002 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/28/2002")) . "\n";

// Vypise: 12/30/2002 - %V,%G,%Y = 1,2003,2002
print "12/30/2002 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/30/2002")) . "\n";

// Vypise: 1/3/2003 - %V,%G,%Y = 1,2003,2003
print "1/3/2003 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/3/2003")) . "\n";

// Vypise: 1/10/2003 - %V,%G,%Y = 2,2003,2003
print "1/10/2003 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/10/2003")) . "\n";



/*     December 2004 / Januar 2005
ISOWk  M   Tu  W   Thu F   Sa  Su
----- ----------------------------
51     13  14  15  16  17  18  19
52     20  21  22  23  24  25  26
53     27  28  29  30  31   1   2
1       3   4   5   6   7   8   9
2      10  11  12  13  14  15  16   */


// Vypise: 12/23/2004 - %V,%G,%Y = 52,2004,2004
print "12/23/2004 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/23/2004")) . "\n";

// Vypise: 12/31/2004 - %V,%G,%Y = 53,2004,2004
print "12/31/2004 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("12/31/2004")) . "\n";

// Vypise: 1/2/2005 - %V,%G,%Y = 53,2004,2005
print "1/2/2005 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/2/2005")) . "\n";

// Vypise: 1/3/2005 - %V,%G,%Y = 1,2005,2005
print "1/3/2005 - %V,%G,%Y = " . strftime("%V,%G,%Y",strtotime("1/3/2005")) . "\n";

?>


Pozri aj


setlocale, mktime



vytlačiť článok  hľadať súvisiace články 

Chat ku článku

Vyhľadávanie na stránke
Reklama
Náhodný obrázok
náhodný obrázok
Kontakty

Martin Kasman, M Software
Smreková 3095/23
Email: martin@kasman.sk

Telefón: 0908 270 294