2011-01-19 54 views

回答

4
print strftime('%B %e, %Y',strtotime('2010-10-22 07:00:00 Etc/GMT')); 

輸出: 「2010年10月22日,」

是如何呢? :)

2

您需要使用此功能:

  1. strtotime()用於獲取unixtimestamp,
  2. strftime()爲outputing一個很好的格式化的時間表達。
2
  1. 解析使用strftime
+0

strptime()是系統相關的。因此,對於PHP 5.3.0及更高版本,建議使用[date_parse_from_format()](http://php.net/date_parse_from_format)。 (不幸的是,[DateTime類](http://php.net/manual/en/class.datetime.php)沒有遵守語言環境。)然而,simon的[strtotime()](http://php.net/strtotime)解決方案如果知道輸入字符串採用可識別的格式(例如ISO 8601),則效率更高。所以+1都是。 – PointedEars 2011-11-24 15:48:30

1
echo date('F d, Y', strtotime($dt)); 
+0

我相信Etc/GMT是造成這個問題,因爲strtotime總是沒有返回。 – 2011-01-19 12:14:35

+0

@Belgin魚:嗯? 1)它適用於我2)你檢查**相同的**答案,給予**後**我的。 – zerkms 2011-01-19 12:32:45

1

使用mktime

  • 格式的時間戳使用strptime
  • 將其轉換成一個時間戳日這應該工作:

    date("F j, Y", strtotime($date))