2011-11-07 97 views
0

我有一個HTML/PHP表單。在PHP中添加日期字段到時間字段

表單上的日期和時間字段是兩個單獨的輸入框。

我想將這些加在一起形成一個PHP值。

輸入框是如下:

<input type="date" id="coldate" name="coldate"> 
<input type="time" id="coltime" name="coltime"> 

我想將類似於此的代碼:

$coldate=$_POST['coldate']; 
$coltime=$_POST['coltime']; 

$coldatetime=$coldate+$coltime; 
echo $coldatetime; 

我怎樣才能格式化這個顯示爲YYYY/MM/DD HH:毫米?

此外,我可以存儲這個作爲一個變量來執行一些邏輯針對它嗎?例如

if (now()<$coldatetime+2hours){ 
} 

在此先感謝。 瑞安

+0

你能給coldate和時間的樣本? – Mob

+0

Hi @Mob。用戶將輸入表單2011-11-07 for coldate和10:00 for coltime。謝謝。 – Smudger

回答

3

您使用date();strtotime();格式化日期

例子:

echo date('Y/m/d g:i', strtotime("2011-11-07 10:00")); 

輸出

2011/11/07 10:00 

至於用它來計算的東西,你可以將其轉換爲unix時間戳並使用它

date('U', strtotime("2011-11-07 10:00")); 

你做這樣的事情添加「+2時間」

echo date("Y/m/d g:i", strtotime(date("Y/m/d g:i", strtotime("2011-11-07 10:00")) . " +2 hours")); 
+0

在我的情況下,這一直奏效,謝謝@Mob! $ datetime = date('Y/m/d g:i',strtotime(「$ coldate $ coltime」)); echo「datetime is」。$ datetime; 乾杯, 瑞安 – Smudger

+0

會不會添加代碼5小時? –

+0

@PranavHosangadi對不起。這是一個錯字。 RyanSmith歡迎您 – Mob

2

我假設你會得到在後的字符串。另外,假設您已完成驗證,並且$_POST['coldate']$_POST['coltime']中的值分別爲有效的日期和時間字符串。你可以簡單地追加字符串

$coldate=$_POST['coldate']; 
$coltime=$_POST['coltime']; 

$coldatetime=$coldate . ' ' . $coltime; 

echo date('Y/m/d g:i', strtotime($coldatetime)); 

這將做到以下幾點:

  1. 創建一個有效的日期 - 時間字符串(通過附加)
  2. 日期時間字符串轉換爲時間戳(strtotime
  3. 格式爲年/月/日小時:分鐘和回聲。
+0

感謝您的輸入,也可以100%。 – Smudger

1
$coldate=$_POST['coldate']; 
$coltime=$_POST['coltime']; 

$coldatetime=$coldate+$coltime; 
echo $coldatetime; 

您可以使用這樣

$coldatetime=$coldate." ".$coltime; 
echo $coldatetime; 

yyyy/mm/dd hh:mm格式獲取日期,使用

echo date('Y/m/d h:i', strtotime($coldatetime));