Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Polska data w komentarzach
Forum PHP.pl > Forum > Przedszkole
amster
Prosiłbym o nakierowanie Was jak wyświetlić w komentarzach polską datę.. W zapisie do bazy danych używam formatu
  1. $data = date('Y-m-d');
, tak też jest ona wyświetlana w pętli while :
  1. $wiersz=idzapytania['data']


Czy idzie jakoś przekonwertować tą datę , żeby była wyświetlana np: 22 marca 2011?
kadlub
  1. <?php
  2. $tablica=array('','styczeń', 'luty','marzec','kwiecien','maj','czerwiec',i tak do grudnia);
  3. echo date('Y').'-'.$tablica[date('n')].'-'.date('d');
  4. ?>


sorry bo chyba nie do końca cię zrozumiałem musisz ją podzielić funkcją explode względem "-" i powinieneś mieć trzy elementową tablice i kolejność sobie zamieniasz jak chcesz
amster
Tak to działa super:) Dzięki:P

a jak zmienić datę wyciągnięta z tej bazy? Bo jęśli wczoraj dodałem wpis to chciałbym żeby pokazał 21 marca 2011... Bo nie wiem jak zmienić ten wpis w pętli:
  1. $wiersz=idzapytania['data']


kadlub
chcesz zmienić z 2011-marzec-21 na 21-marzec-2011 ? jak tak to ci napisałem jak to zrobić
amster
No właśnie wyświetla dobrze, ale bieżącą datę. Ale jeśli pobiera z bazy komentarz który był wpisany 3 dni temu?
Normalnie w pętli wyświetli go : komentarz został dodany: 19.03.2011, a ja chcę żeby ta data była zamieniana na 19 marca 2011.. I nie wiem jak to zrobić bo z bazy pobiera datę w postaci liczbowej
kadlub
  1. <?php
  2. $tablica=array('','styczeń', 'luty','marzec','kwiecien','maj','czerwiec');
  3. $data="21.03.2011";//twoja data z bazy
  4. $data1=explode('.',$data);
  5. echo $data=$data1['0'].'-'.$tablica[substr($data1['1'],-1)].'-'.$data1['2'];//przerobiona
  6. ?>
amster
Pasuje;))
Działa fajnie wink.gif) Aczkolwiek znalazłem jeszcze jeden sposób:
  1.  
  2. $data = $wiersz['data'];
  3. $timestamp = strtotime($data);
  4. $miesiace = array("styczeań", "luty", "marzec", "kwiecień",.....);
  5. printf("%s %s %s %s", date('d', $timestamp), $miesiace[date('n', $timestamp) - 1], date('Y', $timestamp), date('G:i:s', $timestamp));

kadlub


poprawiłem ostatni kod bo wyświetlał miesiące dobrze tylko do września
Lkingsmiley.png

  1. <?php
  2.  
  3. $tablica=array('','styczeń', 'luty','marzec','kwiecien','maj','czerwiec','lipiec','sierpien','wrzesien','pazdziernik','listopad','grudzien');
  4. $data="21.11.2011";//twoja data z bazy
  5. $data1=explode('.',$data);
  6. echo $data=$data1['0'].'-'.$tablica[str_replace(0,"",$data1['1'])].'-'.$data1['2'];//przerobiona
  7. ?>
  8.  
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.