logo

Extra Block Types (EBT) - Neue Erfahrung im Layout Builder❗

Extra Block Types (EBT) - gestylte, anpassbare Blocktypen: Diashows, Registerkarten, Karten, Akkordeons und viele andere. Eingebaute Einstellungen für Hintergrund, DOM Box, Javascript Plugins. Erleben Sie die Zukunft der Layouterstellung schon heute.

Demo EBT-Module EBT-Module herunterladen

❗Extra Absatztypen (EPT) - Erfahrung mit neuen Absätzen

Extra Paragraph Types (EPT) - analoger, auf Absätzen basierender Satz von Modulen.

Demo EPT-Module EPT-Module herunterladen

Scroll
26/05/2025, by Ivan

Wenn Sie Drupal auf einem System ausführen, auf dem PHP mit 32-Bit-Ganzzahlen kompiliert oder auf deren Verwendung beschränkt ist, können Sie nur Daten zwischen 1901 und 2038 eingeben (insbesondere vom 13. Dezember 1901, 20:45:52 UTC bis zum 19. Januar 2038, 03:14:07 UTC). Dies ist allgemein bekannt als der Jahr-2038-Fehler.

Ein häufiges Symptom ist, dass das Datum als 1970-01-01 angezeigt oder gespeichert wird, anstatt des erwarteten Werts außerhalb des oben genannten Bereichs. Dies betrifft alle PHP-Anwendungen. Insbesondere wirkt sich dies in Drupal auf datumsbasierte Feldtypen aus, also nur Datum und Datum & Uhrzeit, einschließlich des „Listen-Auswahl“-Widgets. Sie können Jahre außerhalb des Bereichs 1900 bis 2038 auswählen, aber da PHP diese selbst nicht verarbeiten kann, werden sie ohne Warnung als 1970-01-01 gespeichert/angezeigt.

Betroffene Produkte

  • Offizielle Windows-Builds für PHP 5.x / 7.x für x86 und PHP 5.x für x64.
  • Jedes Webstack-Paket (XAMPP, Wamp, etc.) mit PHP, das für eine 32-Bit-Version kompiliert ist und/oder auf einem 32-Bit-System läuft.
  • Acquia Dev Desktop 2 bis zur Version vom 14. Juni 2018 (jetzt verwendet es 64-Bit-PHP und MySQL).

Hinweis: Entscheidend ist, wie PHP selbst kompiliert wurde: Wenn Sie eine 32-Bit-PHP-Version auf einem 64-Bit-Betriebssystem ausführen, treten die Probleme dennoch auf.

Testen

Um zu prüfen, ob Ihr PHP betroffen ist, können Sie diesen Einzeiler ausführen:

php -r "echo (date('y',strtotime('2039-01-01')) == 39 ? 'OK' : 'Y2K38 limitation') . PHP_EOL;"

Ein nicht betroffenes PHP gibt OK aus, ein betroffenes PHP gibt die Einschränkung Y2K38 aus.

Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.