2012-10-02 2 views
5

Ho un timestamp unix (int) in PHP. Voglio mostrare questo valore in modo carino nell'elemento di input datetime HTML5. Mi piacerebbe che gli utenti vedessero questo valore in un modo piacevole e presentabile, oltre che modificarlo. C'è un modo carino per farlo, o mi sto prendendo in giro e dovrò fare i conti con un sacco di manipolazione delle stringhe?Timestamp PHP in HTML 5 input type = elemento datetime

risposta

12

HTML5 Input time è qualcosa di simile: 1985-04-12T23:20:50.52

Si può fare in PHP come questo:

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

uscita

2012-10-02T19:12:49 

HTML con timestamp

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

Che andrà nell'attributo value dell'elemento ''? Inoltre, penso che tu '' non '' ', solo così non confonderà nessun altro. – thatidiotguy

+3

'echo' consente a', 'di separare l'output. –

+1

E ho imparato qualcosa di nuovo oggi. Grazie per essere gentile con la mia presunta correzione. – thatidiotguy

9

Gli altri esempi sono entrambi il vecchio modo di produrre un formato timeStamp valida per l'elemento TIME - il nuovo piccante in php:

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

che genererà un formato simile:

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

+0

La domanda si riferisce specificamente a 'input [tipo = datetime]' * not * 'time [datetime]'. Grazie per avermi introdotto a 'date()' 's [costanti predefinite] (http://php.net/manual/en/class.datetime.php#datetime.constants.types), però! Continuerò a 'date ('c')' che risulta anche in una stringa identica [ISO 8601] (https://en.wikipedia.org/wiki/ISO_8601) e hehe. – Alastair

2

Datetime non funziona per me su Chrome, datetime-locale mi permette di scegliere la data e l'ora da comparsa. funzioni

esempio

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

tempo() non è rilevante, Io lo utilizzo per rendere più facile per l'utente di scegliere tra corrente .. tempo dopo o prima.