PHP en kolay datetime biçimlendirmek nasıl?

4 Cevap php

2009-12-09 13:32:15 değiştirmek için 09/12/2009

4 Cevap

burada:

 echo date("d/m/Y", strtotime('2009-12-09 13:32:15'))

Sen strtotime to get the timestamp of the first date, and date istediğiniz biçimini kullanarak bir dizeye dönüştürmek için kullanabilirsiniz.

$timestamp = strtotime('2009-12-09 13:32:15');
echo date('d/m/Y', $timestamp);

Ve alırsınız:

09/12/2009



[edit 2012-05-19] o strtotime() muhtemelen önemli sınırlamalar birkaç uğrar Not:

  • Tarih formatında olmalıdır {[(0)];} Diğer bazı durumlarda işe, ama her zaman değil olabilir!
  • Ayrıca, UNIX Timestamps , as done with date() ve strtotime(), sadece 1970 ve 2038 arasındaki tarihleri ​​ile çalışmak mümkün olacak demektir ile çalışan (possibly a wider range, depending on your system -- but not and illimited one anyway)

DateTime sınıfı ile çalışırken genellikle çok daha iyi bir alternatif:

  • Ya kullanabilirsiniz DateTime::__construct() veya DateTime::createFromFormat() bir DateTime nesne oluşturmak için olabilir - ikincisi, PHP> = 5.3 ile kullanılabilir, ancak yararlı olabilir buluşmamız biçimini belirlemenizi sağlar
  • Ve sizinle çalışmak isteyebilirsiniz herhangi bir tarih biçimine o nesneyi dönüştürmek için DateTime::format() yöntemini kullanabilirsiniz.
 $long_date = '2009-12-09 13:32:15';

 $epoch_date = strtotime($long_date);

 $short_date = date('m/d/Y', $epoch_date);

Yukarıdaki bunu yapmanın en kısa yolu değil, bir dönem damgası olarak uzun tarihi olan sen geri gitmek istedim gibi, diğer tarih biçimi çıkışları almak için Orijinal uzun tarihini yeniden ve başka bir yerde sadece zaman olabilir sağlar .