I have a unix timestamp (int) in PHP. I want to display this value in a nice manner in the HTML5 datetime input element. I would like to be able to have users see this value in a nice presentable manner, as well as edit it. Is there any nice way of doing this, or am I fooling myself and I am going to have to fuss around with lots of string manipulation?
4 Answers
HTML5 Input time is something like this : 1985-04-12T23:20:50.52
You can do that in PHP like this :
echo date("Y-m-d\TH:i:s");
Output
2012-10-02T19:12:49
HTML with Timestamp
<input type="datetime" value="<?php echo date("Y-m-d\TH:i:s",$timestamp); ?>"/>
7 Comments
<input type="datetime" ... /> element? Also, I think you mant . not ,, just so it does not confuse anybody else.echo allows , to separate output., allowed with echo, but it's faster than ..The other examples are both the old way to produce a valid timeStamp format for the TIME element -- the new hotness in php:
<time><?php echo date(DATE_W3C); ?></time>
That will generate a format like:
"2013-05-19T06:40:08+00:00"
1 Comment
input[type=datetime] not time[datetime]. Thank you for introducing me to date()'s predefined constants, though! I will stick to date('c') which also results in an identical ISO 8601 string as well hehe.According to the HTML5 Specification for input type="datetime", it should be as simple as setting the value attribute.
value="<?php echo date('c', $timestamp); ?>"
See PHP's date() function for additional formatters.
1 Comment
Datetime doesn't work for me on chrome, datetime-local allows me to choose date and time from popup.
example
<input type="datetime-local" name="xyz" value="<?php echo date("Y-m-d\TH:i:s",time()); ?>"/>
time() functions is not relevant ,I am using it to make it easy for user to choose from current.. time after or before.