2012-10-02 72 views
5

我在PHP中有一個unix時間戳(int)。我想在HTML5 datetime輸入元素中以很好的方式顯示此值。我希望能夠讓用戶以一種漂亮的可視方式看到這個值,並編輯它。有沒有什麼好的方法來做到這一點,或者我是否在愚弄自己,我將不得不大肆渲染大量的字符串操作?到HTML 5輸入類型的PHP時間戳= datetime元素

回答

12

HTML5 Input time是這樣的:1985-04-12T23:20:50.52

你可以做,在PHP這樣的:

echo date("Y-m-d\TH:i:s"); 

輸出

2012-10-02T19:12:49 

HTML與時間戳

<input type="datetime" value="<?php echo date("Y-m-d\TH:i:s",$timestamp); ?>"/> 
+0

這將進入''元素的值屬性嗎?另外,我認爲你不是'''',這樣就不會混淆別人。 – thatidiotguy

+3

'echo'允許','分隔輸出。 –

+1

我今天學到了一些新東西。感謝您對我所應該的改正感到高興。 – thatidiotguy

4

根據HTML5 Specification for input type="datetime",它應該與設置value屬性一樣簡單。

value="<?php echo date('c', $timestamp); ?>" 

有關其他格式化程序,請參閱。

+0

我希望問題中指定的日期時間。 – thatidiotguy

+0

我的錯誤。查看* datetime *的更新。 –

9

其他的例子都產生了時間元素的有效時間戳記格式的老辦法 - 在PHP中新的辣味:

<time><?php echo date(DATE_W3C); ?></time> 

,將產生類似的格式:

「2013 -05-19T06:40:08 + 00:00"

+0

該問題具體詢問'輸入[type = datetime]'* not *'time [datetime]'。 感謝您向我介紹'date()'的[預定義常量](http://php.net/manual/en/class.datetime.php#datetime.constants.types),不過!我會堅持'date('c')'這也會導致相同的[ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)字符串以及hehe。 – Alastair

2

日期時間不爲我的Chrome瀏覽器,日期時間本地讓我選擇從彈出的日期和時間。

例如

<input type="datetime-local" name="xyz" value="<?php echo date("Y-m-d\TH:i:s",time()); ?>"/> 

時間()函數是不相關的,我使用它很容易讓用戶從當前之前或之後選擇..時間。