So erhalten Sie die aktuelle Uhrzeit in PHP: Erstellen Sie zunächst eine PHP-Beispieldatei und rufen Sie dann die aktuelle Uhrzeit direkt über die Anweisung „echo date('Y-m-d h:i:s', time());“ ab.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
1. Holen Sie sich den aktuellen Zeitstempel
Methode 1: Durch die Zeitfunktion
time();
Methode 2: Durch das REQUEST_TIME-Element in $_SERVER
$_SERVER['REQUEST_TIME'];
Methode 3: Durch die strtotime-Funktion
strtotime('now'));
Second , die aktuelle Uhrzeit abrufen
Zeitstempel über Datumsfunktion formatieren
echo date('Y-m-d h:i:s', time()); // 2018-10-3 15:57:05
3 . Zeitzonenproblem
Alle oben genannten Methoden haben Zeitzonenprobleme, spezifische Lösungen:
Methode 1: Ändern Sie php.ini in die chinesische Zeitzone
date.timezone = PRC
Methode 2: Vorübergehend auf China eingestellt Zeitzone in der PHP-Datei
date_default_timezone_set('PRC');
php ruft die aktuelle Uhrzeit und den Zeitstempel ab
Das erste, was Sie wissen müssen, ist, dass die Methode zum Abrufen der Uhrzeit in PHP date() ist , und die Methode zum Abrufen des Zeitstempels in PHP ist time(), strtotime(). Sie werden im Folgenden erläutert.
date()-Format ist: date($format, $timestamp), format ist das Format, timestamp ist der Zeitstempel (optional).
time() Gibt den Unix-Zeitstempel der aktuellen Zeit ohne Argumente zurück.
strtotime($time, $now) Analysiert jede Datums-/Uhrzeitbeschreibung in englischem Text in einen Unix-Zeitstempel. $time ist erforderlich und gibt die zu analysierende Zeitzeichenfolge an; $now wird zur Berechnung des Zeitstempels des Rückgabewerts verwendet. Wenn dieser Parameter weggelassen wird, wird die aktuelle Zeit verwendet. [Empfohlenes Lernen: „PHP-Video-Tutorial“] Anwendungsbeispiel für
date($format):
echo date('Y-m-d'); Ausgabeergebnis: 2018-10-03
echo date( ' Y-m-d H:i:s'); Ausgabeergebnis: 2018-10-03 23:00:00
echo date('Y-m-d', time()); 00 (Das Ergebnis ist das gleiche wie oben, außer dass es einen zusätzlichen Zeitstempelparameter gibt) (Methode zum Konvertieren des Zeitstempels in das Datumsformat)
echo date('Y').'Year'.date('m').'Month '.date('d ').'Day', Ausgabeergebnis: 3. Oktober 2018
Dies sind nur einige Beispiele, es handelt sich lediglich um Formatänderungen. Das Folgende ist die Bedeutung jedes Buchstabens im Zeichenfolgenformat:
a – „am“ oder „pm“
A – „AM“ oder „PM“
d – Tag, zwei Ziffern, wenn weniger als zwei Ziffern vorhanden sind, fügen Sie eine führende Null hinzu, wie zum Beispiel: „01“ bis „31“;
D – Wochentag, drei englische Buchstaben wie: „Fr“
F – Monat, vollständiger englischer Name wie: „Januar“
h – Stunde im 12-Stunden-System; „12“
H – Stunde im 24-Stunden-Format; wie: „00“ bis „23“
g – Die Stunde im 12-Stunden-Format, fügen Sie keine Nullen hinzu, wenn es weniger als zwei Ziffern gibt; 1" bis 12"
G – Die Stunde im 24-Stunden-Format, fügen Sie keine Nullen hinzu, wenn es weniger als zwei Ziffern gibt, wie zum Beispiel: „0“ bis „23“
i – Minuten; „59“
j – Tage, zweistellig, wenn es weniger als zwei Ziffern gibt, wird keine Null hinzugefügt, wie zum Beispiel: „1“ bis „31“
l – Wochentag, vollständiger englischer Name; „Freitag“
m – Monat, zwei Ziffern, wenn es weniger als zwei Ziffern gibt, fügen Sie Nullen voran, wie zum Beispiel: „01“ bis „12“
n – Monat, zwei Ziffern, wenn es weniger als zwei Ziffern gibt, Es werden keine Nullen hinzugefügt, zum Beispiel: „1“ bis „12“
M – Monat, drei englische Buchstaben, wie zum Beispiel: „Jan“
s – Sekunden; eine englische Ordnungszahl am Ende des Wortes, zwei englische Buchstaben wie: „th“, „nd“
t – die Anzahl der Tage im angegebenen Monat wie: „28“ bis „31“
U – die Gesamtzahl der Sekunden
w – der numerische Tag der Woche, wie zum Beispiel: „0“ (Sonntag) bis „6“ (Samstag)
Y – Jahr, vierstellig wie: „1999“
y – Jahr , zwei Ziffern; wie zum Beispiel: „99“
z – ein Jahr Die Anzahl der Tage in wie: „0“ bis „365“
time() Verwendungsbeispiel:
time(); Ausgabeergebnis: 1332427715 (Das zurückgegebene Ergebnis ist der aktuelle Zeitstempel)
strtotime($time) Verwendungsbeispiel:
echo strtotime('2012-03-22'); Ausgabeergebnis: 1332427715 (Ergebnis hier beiläufig geschrieben , nur zur Veranschaulichung)
echo strtotime(date('Y-d-m')); Ausgabeergebnis: (In Kombination mit date() ist das Ergebnis dasselbe wie oben) (Zeit und Datum werden in Zeitstempel umgewandelt)
strtotime( ) und Dies ist eine sehr leistungsfähige Verwendung. Die Parameter können zur Operation von Zahlen und englischen Zeichen von Jahr, Monat, Tag und Woche hinzugefügt werden. Das Beispiel lautet wie folgt:
echo date('Y-m-d H:i:s', strtotime('+1 day')); Ausgabeergebnis: 2012-03-23 23:30:33 (Sie werden feststellen, dass die Zeit um diese Zeit morgen ausgegeben wird)
echo date('Y-m-d H:i:s ',strtotime('-1 day')); Ausgabeergebnis: 2012-03- 21 23:30:33 (gestern um diese Zeit)
echo date('Y-m-d H:i:s',strtotime('+1 Woche')); Ausgabeergebnis: 2012-03-29 23:30:33 (Zeit um diese Zeit nächste Woche)
echo date('Y-m-d H:i:s',strtotime('next Thursday')); : 29.03.2012 00:00:00 (Uhrzeit um diese Zeit nächsten Donnerstag)
echo date('Y-m-d H:i:s',strtotime('last Thursday')); Ausgabeergebnis: 2012-03-15 00:00:00 (Zeit um diese Zeit letzten Donnerstag)
oder höher Das ist alles für Beispiele. Sie können selbst mehr recherchieren. Die strtotime()-Methode kann die Anzeige von Unix-Zeitstempeln durch englischen Text steuern und die erforderliche Zeit ermitteln und Datumsformat.
php ruft die Millisekunden der aktuellen Zeit ab
php selbst stellt keine Funktion zum Zurückgeben der Anzahl der Millisekunden bereit, sondern stellt die Methode microtime() bereit, die ein Array mit zwei Elementen zurückgibt: eines ist die Anzahl der Sekunden und die andere ist die Dezimalzahl, die die Anzahl der Millisekunden darstellt. Wir können diese Methode verwenden, um die Anzahl der zurückgegebenen Millisekunden zu erhalten. Die Methode lautet wie folgt:
function getMillisecond(){ list($s1,$s2)=explode(' ',microtime()); return (float)sprintf('%.0f',(floatval($s1)+floatval($s2))*1000);
Lösung für die 8-Stunden-Differenz zwischen der aktuellen Zeit und der tatsächliche Zeit
Bei der tatsächlichen Entwicklung kommt es häufig vor, dass die tatsächliche Zeitdifferenz im aktuellen System 8 Stunden beträgt. Dies ist auf das Problem der Zeitzoneneinstellung zurückzuführen. Es gibt mehrere Lösungen:
1. Suchen Sie date.timezone in php.ini und ändern Sie den Wert in Asia/Shanghai, d. h. date.timezone = Asia/Shanghai (stellen Sie die aktuelle Zeitzone auf die Zeitzone Asia Shanghai ein)
2 . Fügen Sie date_default_timezone_set('Asia/Shanghai'); hinzu.
Beide Methoden sind verfügbar, es hängt von den persönlichen Vorlieben ab.
Das obige ist der detaillierte Inhalt vonSo erhalten Sie die aktuelle Uhrzeit in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!