Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zamiana formatu daty z klasą DateTime
Forum PHP.pl > Forum > PHP
bebzon_hc
Witam!
Mam mały problem... ale nie widzę albo nie wiem dlaczego...

Pobieram datę w formacie: 2016/01/05 24:00:00

Chcę wyciągnąć datę (bez godziny) w postaci: 05/01/2016

Stworzyłem sobie funkcję:
  1. public function fnConvertDateToRead($date) {
  2. $format = "Y/m/d H:m:s";
  3. $convertDate = DateTime::createFromFormat($format, $date, new DateTimeZone('Europe/Warsaw'));
  4. return $convertDate->format("d/m/Y");
  5. }


według mnie powinno zwrócić wszystko poprawnie, jednak dostaję dziwną datę... np. do funkcji wrzucam
"2016/05/01 20:00:00"
a otrzymuję
"01/12/2015"

drugi przykład
Wrzucam: "2016/08/14 12:00:00"
otrzmuję: "14/12/2015"

Macie jakieś sugestie?
p.s chciałbym wykorzystać klasę DateTime
viking
  1. $format = "Y/m/d H:i:s";

m oznacza miesiąc.
Pyton_000
  1. $data = new DateTime('2016/01/05 24:00:00');
  2.  
  3. echo $data->format('d/m/Y');
bebzon_hc
Cytat(Pyton_000 @ 19.02.2016, 10:03:13 ) *
  1. $data = new DateTime('2016/01/05 24:00:00');
  2.  
  3. echo $data->format('d/m/Y');


Do funkcji DateTime::createFromFormat jako parametr muszę włożyć dwa stringi. new DateTime zwraca obiekt.

Już sobie poradziłem. Dziękuję
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.