So berechnen Sie die Anzahl der Tage in einem bestimmten Jahr in PHP

PHPz
Freigeben: 2023-03-20 16:54:01
Original
1879 Leute haben es durchsucht

PHP ist eine weit verbreitete serverseitige Skriptsprache, mit der verschiedene Websites und dynamische Anwendungen entwickelt werden können. Auch die Berechnung der Anzahl der Tage in einem bestimmten Jahr ist in bestimmten Szenarien eine sehr nützliche Funktion. In diesem Artikel stellen wir vor, wie man mit PHP die Anzahl der Tage in einem bestimmten Jahr berechnet.

  1. So berechnen Sie die Anzahl der Tage in einem Jahr

Um die Anzahl der Tage in einem Jahr zu berechnen, müssen Sie zunächst verstehen, dass die Anzahl der Tage in einem Jahr unsicher ist. Ein Jahr hat normalerweise 365 Tage, aber in einem Schaltjahr hat das Jahr 366 Tage. Ein Schaltjahr ist ein Jahr, in dem der Rest bei Division durch 4 0 beträgt. Ein Jahr, das gleichmäßig durch 100, aber nicht durch 400 teilbar ist, ist kein Schaltjahr. Daher können wir bedingte Anweisungen in PHP verwenden, um festzustellen, ob ein bestimmtes Jahr ein Schaltjahr ist, und so die Anzahl der Tage in einem Jahr berechnen.

Das Folgende ist der PHP-Code:

function countDaysInYear($year) {
  if ($year % 4 == 0) {
    if ($year % 100 == 0 && $year % 400 != 0) {
      return 365;
    } else {
      return 366;
    }
  } else {
    return 365;
  }
}

echo countDaysInYear(2021);  // 输出 365
echo countDaysInYear(2020);  // 输出 366
Nach dem Login kopieren

Die Funktion countDaysInYear im obigen Code akzeptiert ein Jahr als Parameter und gibt die Anzahl der Tage im Jahr zurück. Innerhalb der Funktion verwenden wir zunächst den Operator %, um zu bestimmen, ob das Jahr ein Schaltjahr ist. Ist das Jahr durch 4 teilbar, handelt es sich um ein Schaltjahr, andernfalls um ein gewöhnliches Jahr. countDaysInYear函数接受一个年份作为参数,返回该年份的天数。在函数内部,我们首先使用%运算符判断该年份是否是闰年。如果该年份能够被4整除,则为闰年,否则为平年。

如果是闰年,我们还需要判断该年份是否是能被100整除却不能被400整除的年份。如果是这种情况,则不是闰年,天数为365;否则是闰年,天数为366。

  1. 如何计算任意一天是今年第几天

当我们有一个具体的日期时,也可以使用PHP来计算这一天是今年的第几天。这个计算需要用到PHP中的strtotimedate函数。

先说一下strtotime函数,它可以将文本日期(如"now"、"2021-07-12"等)转换为Unix时间戳。Unix时间戳是从1970年1月1日 00:00:00 UTC到输入日期的秒数。

我们可以使用strtotime函数将当前日期转换为Unix时间戳,再计算出与今年1月1日的时间差,最后再加上1,即可得到该日期是今年的第几天。

下面是PHP代码:

function getDayOfYear($date) {
  $now = strtotime($date);
  $start = strtotime(date('Y', $now) .'-01-01');
  return floor(($now - $start) / (60 * 60 * 24)) + 1;
}

echo getDayOfYear('2021-07-12');  // 输出 193
Nach dem Login kopieren

上述代码中的getDayOfYear函数接受一个日期字符串作为参数,返回该日期是今年的第几天。

在函数内部,我们首先使用strtotime函数将该日期字符串转换为Unix时间戳。然后使用date

Wenn es sich um ein Schaltjahr handelt, müssen wir außerdem feststellen, ob das Jahr durch 100, aber nicht durch 400 teilbar ist. Wenn dies der Fall ist, handelt es sich nicht um ein Schaltjahr und die Anzahl der Tage beträgt 365; andernfalls handelt es sich um ein Schaltjahr und die Anzahl der Tage beträgt 366.

      So berechnen Sie den Tag dieses Jahres für jeden Tag
    1. Wenn wir ein bestimmtes Datum haben, können wir PHP auch verwenden, um den Tag dieses Jahres für diesen Tag zu berechnen. Diese Berechnung erfordert die Verwendung der Funktionen strtotime und date in PHP.

    Lassen Sie uns zunächst über die Funktion strtotime sprechen, die Textdaten (z. B. „jetzt“, „12.07.2021“ usw.) in Unix-Zeitstempel konvertieren kann. Der Unix-Zeitstempel ist die Anzahl der Sekunden vom 1. Januar 1970 00:00:00 UTC bis zum Eingabedatum.

    🎜Wir können die Funktion strtotime verwenden, um das aktuelle Datum in einen Unix-Zeitstempel umzuwandeln, dann die Zeitdifferenz vom 1. Januar dieses Jahres zu berechnen und schließlich 1 zu addieren, um das Datum dieses Jahres zu erhalten paar Tage. 🎜🎜Das Folgende ist der PHP-Code: 🎜rrreee🎜Die Funktion getDayOfYear im obigen Code akzeptiert eine Datumszeichenfolge als Parameter und gibt den Tag des Jahres zurück, an dem sich das Datum befindet. 🎜🎜Innerhalb der Funktion verwenden wir zunächst die Funktion strtotime, um diese Datumszeichenfolge in einen Unix-Zeitstempel zu konvertieren. Verwenden Sie dann die Funktion date, um den 1. Januar des aktuellen Jahres in einen Unix-Zeitstempel umzuwandeln. 🎜🎜Als nächstes berechnen wir den Zeitunterschied zwischen dem aktuellen Datum und dem 1. Januar und ermitteln die Anzahl der Tage. Da wir die Anzahl der Tage ab dem 1. Januar berechnen möchten, müssen wir zu dieser Anzahl Tage 1 addieren. 🎜🎜🎜🎜Zusammenfassung🎜🎜🎜🎜In diesem Artikel haben wir vorgestellt, wie man mit PHP die Anzahl der Tage in einem bestimmten Jahr und den Tag des Jahres für ein beliebiges Datum berechnet. Diese Berechnungen werden in einigen Szenarien möglicherweise nicht häufig verwendet, aber für Programmierer kann das Schreiben solcher Funktionen auch ihre Programmierfähigkeiten verbessern und ihren Werkzeugkasten erweitern. 🎜

Das obige ist der detaillierte Inhalt vonSo berechnen Sie die Anzahl der Tage in einem bestimmten Jahr in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
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!