Im vorherigen Artikel „So berechnen Sie die Gesamtzahl der Tage für ein bestimmtes Jahr, einen bestimmten Monat und einen bestimmten Tag mit PHP“ haben wir eine Methode zur Berechnung der Gesamtzahl der Tage für ein bestimmtes Jahr, einen bestimmten Monat und einen bestimmten Tag vorgestellt. Diesmal vereinfachen wir die Methode und zeigen Ihnen, wie Sie mit Hilfe der Funktion strtotime() die Gesamtzahl der Tage berechnen.
Das Thema dieses Artikels lautet: Berechnen Sie anhand eines Jahres, eines Monats und eines Tages die Gesamtzahl der Tage bis zu diesem Tag.
Wie berechnet man das? Wenn Sie keine Ahnung haben, ändern wir die Richtung und vereinfachen es. Geht es nicht nur darum, die Anzahl der Tage zwischen dem 1. Januar, dem Jahr x und dem Tag x, dem Monat x und dem Jahr x zu ermitteln? Zeitunterschied zwischen den beiden Daten. Wie findet man also den Zeitunterschied?
Wir müssen zuerst zwei Daten umrechnen: 1. Januar von x Jahr und x Monat x Tag von x Jahr in Zeitstempel
$startdate = strtotime("{$year}-01-01"); $enddate = strtotime("{$year}-{$month}-{$day}");
Dann subtrahieren Sie die beiden Zeitstempel (Endzeit - Startzeit)
$diff_seconds = $enddate-$startdate;
Dadurch erhalten Sie den Zeitunterschied Es wird jedoch weiterhin in Sekunden gezählt, was dem Lesen nicht förderlich ist.
Denn ein Tag hat 24 Stunden, eine Stunde 60 Minuten und eine Minute 60 Sekunden. Wenn man umrechnet 24*60*60=86400
, hat ein Tag 86.400 Sekunden.
Teilen Sie die Zeitdifferenz $diff_seconds durch 86400 und runden Sie dann mit floor() auf die nächste ganze Zahl ab.
$time = floor(($diff_seconds)/86400);
Was Sie zu diesem Zeitpunkt erhalten, ist die Differenz in Tagen, mit Ausnahme des Tages x Monat x Tag, den Sie addieren müssen 1. Es handelt sich um die Gesamtzahl der Tage, die an einem bestimmten Tag eines bestimmten Monats und Jahres enden.
Schauen wir uns den vollständigen Code an:
function GetDays($year,$month,$day){ $startdate = strtotime("{$year}-01-01"); $enddate = strtotime("{$year}-{$month}-{$day}"); $diff_seconds = $enddate-$startdate; $time = floor(($diff_seconds)/86400); $day = $time+1; echo "截止{$year}-{$month}-{$day} 共有 {$day} 天<br>"; }
Testen Sie es: Berechnen Sie die Gesamtzahl der Tage ab 2000-3-5 (da 2000 ein Schaltjahr ist, also 31+29+5=65)
GetDays(2000,3,5);
Das Ausgabeergebnis ist:
OK, die Gesamtzahl der Tage ist korrekt! Mit der Funktion GetDays($year,$month,$day) können wir auch die Gesamtzahl der Tage in einem Jahr berechnen
GetDays(2000,12,31); GetDays(2021,12,31);
Das Ausgabeergebnis ist:
Okay, das ist alles Alles andere können Sie hier klicken. → →php-Video-Tutorial
Das obige ist der detaillierte Inhalt vonPHP-Funktionsanwendung zur Berechnung, wie viele Tage bis zu einem bestimmten Tag eines bestimmten Monats eines bestimmten Jahres verbleiben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!