2017-01-16 58 views
2

我想格式化現有的日期使用PHP,但它沒有按預期工作。我的代碼如下:無法格式化日期根據要求使用PHP

$edate="03/12/2016 12:01:43 PM"; 
$date=date('m/d/Y H:i:s A',strtotime($edate)); 
echo $date.'<br/>'; 

在這裏,我需要先顯示月份,這樣的格式:mm/dd/yyyy但我的代碼它給我下面的結果:

2016年3月12日12:下午1時43分

,而我應該得到這樣的結果:

2016年12月3日

回答

2

-更換/爲輸入日期:

$edate="2/12/2016 12:01:43 PM"; 
$_edate = str_replace('/', '-', $edate); 
$date=date('m/d/Y H:i:s A',strtotime($_edate)); 
echo $date.'<br/>'; 
+0

棘手的解決方案。好一個! – x01saa

1

date function,試試這個:

date("m/d/Y", strtotime(str_replace('/', '-', $edate))); 
+0

我已經提到過一個月應該是第一位的。請檢查我的帖子。 – subhra

+0

請編輯您的問題 – x01saa

0

物權法使用DateTime,然後您可以以任何格式格式化日期。

首先,你必須使用createFromFormat()轉換成您的日期格式,然後用format()任何日期格式

格式化就試試這個

<?php 
    $edate="03/12/2016 12:01:43 PM"; 
    try { 

    echo DateTime::createFromFormat('d/m/Y h:i:s A', $edate)->format('m/d/Y'); 
    } catch (Exception $e) { 
     echo "error"; 
     exit(1); 
    } 
?>