我有一個列日期 & 從請求date有一些可能性來自用戶
- 日期可能為空
- 日期可能是一個月和一年,我必須讓它成為一個完整的日期!喜歡
20204/=>2020-04-01 - 日期可能是正常日期
2020-04-01 - 日期可能會出現,因為
1/4/2020我需要將其轉換為真實日期,例如2020-04-01
我處理了前兩個,但我不知道如何處理第三個或檢查它是否是完整的日期!
我的代碼:
$newDate = null; // 1
$ex = $request->expired_date;
if(DateTime::createFromFormat('Y-m-d', $myString) !== false){
$newDate = $ex; // 2
}else {
$removeSpace = str_replace(' ', '', $ex);
list($month, $year) = explode('/', $removeSpace);
$newDate = vsprintf('%s-%s-%s', [$year, $month, '1']); // 3
}
我只剩下 4 個了,如何將日期轉換1/4/2020為2020-04-01?
uj5u.com熱心網友回復:
你可以在 php 中使用strtotime函式
$date="1/4/2020";
$new_date=date("Y-m-d",strtotime($date));
uj5u.com熱心網友回復:
您可以使用日期時間。首先,您將 Date ('1/4/2020') 傳遞給 DateTime 建構式。然后就可以使用 DateTime 函式格式了。為函式提供所需的日期格式 ('Ym-d')。
$dt = new DateTime('1/4/2020');
$fdt = $dt->format('Y-m-d');
// output: 2020-01-04
注意:但@NicoHaase 是對的。為什么不在前端驗證正確的格式?
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/324921.html
上一篇:禁止用PHP發推?
