簡體   English   中英

如何使用PHP將日期轉換為特定格式?

[英]How to convert the date into paticular format using PHP?


我有輸入框以獲取mm-dd-yyyy格式的值。所以當我得到日期時,我嘗試將其轉換為YYYY-MM-DD格式。但它不起作用。
例如 :
<? $birthdate="08-13-2000"; $date=date('Ym-d',strtotime($birthdate)); echo $date; ?> <? $birthdate="08-13-2000"; $date=date('Ym-d',strtotime($birthdate)); echo $date; ?> 輸出是1970-01-01
但如果我給了13-08-2000我得到2000-08-13 I dont want to split 。因為在我的應用程序中,我在很多地方使用過這樣的東西。但是我認為strtotime將它轉換成unix時間戳格式,即使是有價值的。這就是為什么我試着這樣做。我理解或做什么錯了?
提前致謝。

嘗試這個:

$date = explode("-", "08-13-2000"); // input MM-DD-YYYY
$time = mktime(0, 0, 0, $date[0], $date[1], $date[2]); // to time
$date = date('Y-m-d', $time); // transform to Y-m-d
echo $date; // output YYYY-MM-DD
  • $ date [0]是月份
  • $ date [1]是一天
  • $ date [2]是年份

如果你在很多地方使用它,做一個函數():

function transformDate($input)
{
    $date = explode("-", $input);
    $time = mktime(0, 0, 0, $date[0], $date[1], $date[2]);
    $date = date('Y-m-d', $time);

    return $date;
}

echo transformDate("08-13-2000");

strtotime()將短划分的日期解析為dd-mm-yyyy。 您需要將生日輸入為“08/13/2000”。 如果你不能改變輸入的預期分隔符,str_replace應該為此工作。

信用分區差異為sam at frontiermedia dot net dot au來自php.net

編輯:如果您需要進行替換,請提供一些示例代碼:

$birthdate = '08-13-2000';
$birthdate = str_replace('-','/',$birthdate);
$date      = date('Y-m-d',strtotime($birthdate)); 

echo $date;

否則就是這樣

$birthdate = '08/13/2000';
... snip ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM