Sonstige Änderungen

Meldungen und Warnungen bei Rechenoperationen mit ungültigen Zeichenketten

Es wurden neue Fehler der Stufen E_WARNING und E_NOTICE hinzugefügt, die ausgelöst werden, wenn mit Operatoren, die Zahlen erwarten (+ - * / ** % << >> | & ^) oder mit deren entsprechenden Zuweisungen ungültige Zeichenketten erzwungen werden. Ein Fehler der Stufe E_NOTICE wird ausgelöst, wenn eine Zeichenkette mit einem numerischen Wert beginnt, aber nachfolgende nicht-numerische Zeichen enthält, und ein Fehler der Stufe E_WARNING wird ausgelöst, wenn eine Zeichenkette keinen numerischen Wert enthält.

<?php
'1b' 'something';

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Notice: A non well formed numeric value encountered in %s on line %d
Warning: A non-numeric value encountered in %s on line %d

Warnung beim Überlauf einer oktalen Maskierungs-Sequenz

Bisher wurde keine Warnung ausgegeben, wenn eine Maskierungs-Sequenz in oktaler Notation überlief. Nun läuft sie immer noch über, löst aber in diesem Fall einen Fehler der Stufe E_WARNING aus.

<?php
var_dump
("\500");

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

Warning: Octal escape sequence overflow \500 is greater than \377 in %s on line %d
string(1) "@"

Unstimmigkeiten bei $this behoben

Während $this in PHP als spezielle Variable betrachtet wird, fehlte es an geeigneten Überprüfungen, um sicherzustellen, dass es nicht als Variablenname verwendet oder neu zugewiesen wird. Dies wurde nun korrigiert, sodass $this keine benutzerdefinierte Variable mehr sein kann, keinen anderern Wert zugewiesen bekommt und nicht mehr globalisiert werden kann.

Erzeugung von Session-IDs ohne Hashing

Session-IDs werden bei der Erzeugung nicht mehr gehasht. Wegen dieser Änderung wurden die folgenden vier INI-Einstellungen entfernt:

  • session.entropy_file
  • session.entropy_length
  • session.hash_function
  • session.hash_bits_per_character

Außerdem wurden die folgenden zwei neuen INI-Einstellungen hinzugefügt:

  • session.sid_length - definiert die Länge der Session-ID. Aus Gründen der Abwärtskompatibilität ist der Standardwert 32 Zeichen.
  • session.sid_bits_per_character - definiert die Anzahl von Bits, die pro Zeichen gespeichert werden sollen (d. h. mit diesem Wert kann der für die Session-ID zulässige Wertebereich erlaubter Zeichen erhöht werden). Aus Gründen der Abwärtskompatibilität ist der Standardwert 4.

Änderungen bei der Handhabung von INI-Dateien

precision

Wenn der Wert auf -1 gesetzt wird, dann wird der dtoa-Modus 0 verwendet. Der Standardwert ist weiterhin 14.

serialize_precision

Wenn der Wert auf -1 gesetzt wird, dann wird der dtoa-Modus 0 verwendet. Der Standardwert ist nun -1.

gd.jpeg_ignore_warning

Der Standardwert für diese php.ini-Einstellung wurde auf 1 geändert, sodass libjpeg-Warnungen in der Standardeinstellung ignoriert werden.

opcache.enable_cli

Der Standardwert für diese php.ini-Einstellung wurde in PHP 7.1.2 auf 1 (aktiviert) gesetzt und in PHP 7.1.7 wieder auf 0 (deaktiviert).

Erzeugung der Session-ID nur mit einem CSPRNG

Session-IDs werden nun nur noch mit einem CSPRNG erzeugt.

Aussagekräftigere TypeError-Meldungen, wenn null erlaubt ist

Bei Typüberprüfungen durch arg_info geben TypeError-Exceptions nun aussagekräftigere Fehlermeldungen aus. Wenn der Parametertyp oder der Rückgabetyp null akzeptiert (indem er entweder einen Standardwert von null hat oder ein nullable-Typ ist), dann wird dies nun in der Fehlermeldung mit einem Hinweis wie "must be ... or null" oder "must ... or be null" erwähnt.

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

"Baustellen" endlich angehen?

It's great to hear you're tackling those long-postponed projects! Outdoor lighting can indeed be a challenge, but it's rewarding once completed. I ...

Geschrieben von boilersuitchorus am 28.10.2025 08:56:00
Forum: Off-Topic Diskussionen
json Rückgabe von Open Weather darstellen

Es ist wie du gesagt hast, sobald man es richtig lesen kann, ist das Auslesen super einfach. Danke für den Tipp. Die Lösung, sollte sie nochmal ...

Geschrieben von Chaos_Lord am 22.10.2025 19:07:27
Forum: PHP Developer Forum
Fatal Error bei übergabe an Datenbank 1 Formular funktioniert das andere nicht

Achte auf meine Hinweise, die ich nachträglich geschrieben habe.

Geschrieben von scatello am 16.10.2025 20:02:05
Forum: PHP Developer Forum
Fatal Error bei übergabe an Datenbank 1 Formular funktioniert das andere nicht

konnte es mittlerweile lösen. habe zeile für zeile nochmal auseinander genommen nur um dann festzustellen das die Meldung vorher von einer ander ...

Geschrieben von phppower am 16.10.2025 20:01:14
Forum: PHP Developer Forum