So erhalten Sie das aktuelle Jahr in PHP: Ein umfassender Leitfaden mit Beispielen

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Einleitung: Warum ist die Frage „Wie erhalte ich das aktuelle Jahr in PHP?“ so beliebt?



Man sollte meinen, was gibt es Einfacheres? Einfach das aktuelle Jahr ausgeben. Doch auf Stack Overflow hat diese Frage Hunderttausende von Aufrufen. Warum? Weil sich hinter der scheinbaren Einfachheit Dutzende von Nuancen verbergen: von den Unterschieden zwischen Serverzeit und der Zeitzone des Benutzers bis hin zur korrekten Formatierung für verschiedene Locales.



In diesem Artikel werden wir uns alle möglichen Methoden ansehen, um das aktuelle Jahr in PHP zu ermitteln, lernen, typische Fehler zu vermeiden, und verstehen, welche Methode Sie für Ihre spezifische Aufgabe wählen sollten. Egal, ob Sie einen Copyright-Hinweis in der Fußzeile einer Website oder ein komplexes Zeiterfassungssystem schreiben – dieses Material wird nützlich sein.



Los geht's!



Methode Nr. 1: Die klassische Funktion date()



Der beliebteste und einfachste Weg, das aktuelle Jahr in PHP zu ermitteln, ist die Verwendung der Funktion date(). Sie gibt einen formatierten String mit dem aktuellen Datum und der Uhrzeit des Servers zurück.



<?php// Aktuelles Jahr ermitteln (4 Ziffern)$year = date('Y');echo "Wir haben das Jahr $year"; // Ausgabe: Wir haben das Jahr 2026?>


Was passiert hier? Das Zeichen Y ist ein Format, das „Jahr im 4-stelligen Format“ bedeutet. Wenn Sie das Jahr als zweistellige Zahl benötigen (24, 25, 26), verwenden Sie y:



<?phpecho date('y'); // 26?>


Warum ist date('Y') gut?

  • Einfachheit: Eine Codezeile – und fertig.
  • Flexibilität: Kann mit anderen Formaten kombiniert werden: date('Y-m-d') – Datum, date('Y-m-d H:i:s') – Datum mit Uhrzeit.
  • Geschwindigkeit: Die Funktion arbeitet sehr schnell, erfordert keine Objekterstellung.


Wann ist Vorsicht geboten?

Die Funktion date() verwendet die in den PHP-Einstellungen festgelegte Zeitzone (Direktive date.timezone in der php.ini). Wenn auf dem Server eine falsche Zeitzone eingestellt ist, kann das Ermitteln des aktuellen Jahres in PHP in der Silvesternacht ein falsches Ergebnis liefern.



Lösung: Setzen Sie die Zeitzone immer am Anfang des Skripts:



<?phpdate_default_timezone_set('Europe/Berlin');echo date('Y'); // Jetzt definitiv 2026?>


Methode Nr. 2: Der objektorientierte Ansatz – die Klasse DateTime



Wenn Sie modernen PHP-Code (Version 5.2+) schreiben, verwenden Sie besser die Klasse DateTime. Dies ist ein leistungsfähigeres und flexibleres Werkzeug für die Arbeit mit Daten.



<?php$now = new DateTime();$year = $now->format('Y');echo "Aktuelles Jahr: $year";?>


Vorteile von DateTime:

  • Objektmodell: Daten können einfach manipuliert werden (Tage, Monate hinzufügen, vergleichen).
  • Klare Zeitzonenverwaltung: Übergeben Sie die Zeitzone an den Konstruktor.
  • Internationalisierung: Daten lassen sich leicht lokalisieren.


Beispiel mit Zeitzone:



<?php$timezone = new DateTimeZone('Europe/London');$now = new DateTime('now', $timezone);echo $now->format('Y'); // Jahr nach Greenwich Mean Time?>


Methode Nr. 3: Verwendung der Funktion strftime() (veraltet, aber noch vorhanden)



Die Funktion strftime() war einst der Standard für die lokalisierte Datumsausgabe. Seit PHP 8.1 ist sie als veraltet markiert, aber in älteren Projekten können Sie ihr noch begegnen.



<?phpsetlocale(LC_TIME, 'de_DE.UTF-8');echo strftime('%Y'); // 2026?>


Wichtig: Verwenden Sie strftime() nicht in neuen Projekten. Verwenden Sie stattdessen IntlDateFormatter für die Lokalisierung.



Methode Nr. 4: Wie erhält man das Jahr aus einem beliebigen Datum?



Oft muss man nicht nur das aktuelle Jahr in PHP ermitteln, sondern es aus einem bereits vorhandenen Datum extrahieren

Blogs

Buchempfehlungen