2009-10-06 20 views

risposta

84
print date('H:i'); 
$var = date('H:i'); 

Dovrebbe farlo, per l'ora corrente. Utilizzare una lettera h minuscola per 12 ore invece di 24 ore.

+3

documentazione completa qui- http://us3.php.net/manual/en/function.date.php – Kip

+0

Grazie mille. ma non mostra il mio tempo di sistema .. c'è qualche differenza. – smakstr

+1

L'output dalla data() mostrerà l'ora locale del server. Potrebbe essere necessario eseguire aggiustamenti del fuso orario, oppure sovrascrivere il fuso orario del server come menzionato in altri post. In genere, la soluzione migliore consiste nell'affrontare i timestamp UTC/GMT (gmdate() e altri) e apportare aggiustamenti timezeone basati su GMT, poiché è trasferibile su più configurazioni. – Rob

17

Prova questo:

$hourMin = date('H:i'); 

Questo sarà tempo di 24 ore con un'ora che è sempre due cifre. Per tutte le opzioni, vedere PHP docs for date().

1

Nell'affrontare il tuo commento che hai bisogno del tuo orario corrente, e non del tempo di sistema, dovresti fare una regolazione da solo, ci sono 3600 secondi in un'ora (l'orario delle unità utilizza), quindi usalo. ad esempio, se l'ora del proprio sistema era un'ora indietro:

$ time = date ('H: i', time() + 3600);

9
print date('H:i'); 

È necessario impostare il fuso orario corretto in php.ini.

Cercare queste righe:

[Date] 

; Defines the default timezone used by the date functions 

;date.timezone = 

Sarà qualcosa di simile:

date.timezone ="Europe/Lisbon" 

Non dimenticare di riavviare il server web.

+0

Questo è obsoleto. Devi impostare il tuo fuso orario nello script PHP attuale (c'è un errore severo generato quando non lo fai). http://php.net/date-default-timezone-set è la funzione da utilizzare quando si imposta il fuso orario nello script PHP. – dcousineau

1
function get_time($time) { 
    $duration = $time/1000; 
    $hours = floor($duration/3600); 
    $minutes = floor(($duration/60) % 60); 
    $seconds = $duration % 60; 
    if ($hours != 0) 
     echo "$hours:$minutes:$seconds"; 
    else 
     echo "$minutes:$seconds"; 
} 

get_time('1119241'); 
Problemi correlati