2010-04-24 12 views

risposta

22

come detto da tutti PHP solo visualizza il tempo lato server.

Per il lato client, è necessario il javascript, qualcosa del genere dovrebbe fare il trucco.

var currentTime = new Date(); 
var hours = currentTime.getHours(); 
var minutes = currentTime.getMinutes(); 

if (minutes < 10) { 
    minutes = "0" + minutes; 
} 

document.write("<b>" + hours + ":" + minutes + " " + "</b>"); 

E se si desidera che il/PM suffisso AM, qualcosa di simile alla seguente dovrebbe funzionare:

var currentTime = new Date(); 
var hours = currentTime.getHours(); 
var minutes = currentTime.getMinutes(); 

var suffix = "AM"; 

if (hours >= 12) { 
    suffix = "PM"; 
    hours = hours - 12; 
} 

if (hours == 0) { 
    hours = 12; 
} 

if (minutes < 10) { 
    minutes = "0" + minutes; 
} 

document.write("<b>" + hours + ":" + minutes + " " + suffix + "</b>"); 

Ecco a list of additional JavaScript Date and Time functions si potrebbe pasticciare con.

+0

così il server invia un'intestazione temporale al client ma il client non lo fa al server? PERCHÉ? – My1

1

PHP è lato server solo per quanto ne so.

Forse si desidera utilizzare JavaScript.

3

Come PHP viene eseguito sul lato server, non è possibile accedere al tempo lato client da PHP: PHP non sa molto sul browser - e si può avere script PHP che girano senza essere chiamato da un browser.

Ma si potrebbe ottenere da Javascript(che viene eseguito sul lato client), e, quindi, passare a PHP tramite una richiesta Ajax, per esempio.


E qui sono un paio di domande + risposte che potrebbero aiutare a iniziare:

+0

beh, potrebbe essere stato semplicemente possibile che il client passi il tempo tramite un'intestazione o qualsiasi altra cosa, anche il server lo fa dopo tutto. – My1

31

Ecco una soluzione "PHP":

echo '<script type="text/javascript"> 
var x = new Date() 
document.write(x) 
</script>'; 
+41

stai scherzando? – Simon

+16

+1 per una risposta sarcastica ma tecnicamente corretta! – Karma

+0

Se uno script sta per essere eseguito sul server, come mai js conosce l'ora sul PC client. –

4

Si potrebbe utilizzare Geolocalizzazione per Indirizzo IP di capire quale paese l'utente è in, e quindi utilizzare tale.

Ma usare Javascript o lasciare che l'utente scelga un fuso orario sarà probabilmente migliore.

Problemi correlati