2012-06-19 56 views
2

PHP代碼:在PHP轉換ISO 8601格式d M Y

echo date("c"); //out put like this 2012-06-19T20:37:44+05:30 
echo date("d M, Y"); //out put "Jun 19,2012" 

$time=date("c"); 
echo date("d M, Y",$time);// This is not working. What could the reason be? 

我的要求是,以ISO8601格式轉換爲 'd M,Y'。我需要以這種格式與timeago jQuery plugin一起使用。

+0

你想的jQuery或PHP這個功能?您的帖子的標題和正文彼此矛盾... – Lix

+0

[Alternative answer](http://stackoverflow.com/a/11104438/212940)爲您發佈。 – vascowhite

回答

2

的問題是,到目前爲止,第二個參數有望成爲一個時間戳,要傳遞一個字符串。使用strtotime您的轉換日期爲時間戳:

$time = date("c"); 
echo date("d M, Y", strtotime($time)); 
3

或者,你可以使用PHP的DateTime對象來執行轉換: -

$dateTime = DateTime::createFromFormat(DateTime::ISO8601, date('c')); 
echo $dateTime->format('d M Y');