Bei der Berechnung des Zeitunterschieds in Sekunden in PHP durch die Konvertierung zweier Datumsangaben in Unix-Zeitstempel treten unvorhergesehene Ergebnisse auf.
P粉237029457
P粉237029457 2023-09-03 09:22:01
0
1
448

Gemäß dem Titel versuche ich, den Unterschied in Sekunden zu ermitteln und diese Sekunden dann in Tage und Stunden umzuwandeln.

Nachdem ich ähnliche Fragen gelesen und befolgt hatte, habe ich eine Funktion erstellt, die die gewünschte Stunde, den Tag, die Woche, den Monat oder das Jahr zum heutigen Datum/Uhrzeit hinzufügt, und ich erhalte in diesem Teil die richtigen Ergebnisse.

Allerdings habe ich dann versucht, die beiden Daten (Startdatum und Umzugsdatum) in Unix-Zeitstempel umzuwandeln, indem ich beide Zeitstempel subtrahierte, um die Differenz zwischen den beiden Daten in Sekunden zu ermitteln, und dann erhalte ich durch die Konvertierung nicht die erwarteten Ergebnisse für Tage oder Minuten (/86400 und /3600).

Das ist der Code.

Das aktuelle Ergebnis ist...

2023-01-04 09:37:51 > 19361 Tage oder 464673 Stunden

Ich hatte erwartet, dass es so sein würde

2023-01-04 09:37:51 > 1 Tag oder 24 Stunden

P粉237029457
P粉237029457

Antworte allen (1)
P粉769413355

问题是您使用的是不带参数的 date() 函数,请尝试使用这个:

$dateTimeNow = date("Y-m-d H:i:s"); function dateTimeShift($dateTimeIn, $lengthNum, $lengthWord) { $shifted = date("Y-m-d H:i:s", strtotime($dateTimeIn." + $lengthNum $lengthWord")); $difference = strtotime($shifted)-strtotime($dateTimeIn); return $shifted . " 
" . floor($difference/86400) . " days or " . floor($difference/3600) . " hours"; } echo dateTimeShift($dateTimeNow, "1", "day");

输出:

2023-01-04 09:57:31 
1 days or 24 hours
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!