Folgende Änderungen wurden an den Klassen/Funktionen/Methoden dieser Extension vorgenommen.
| Version | Function | Description |
|---|---|---|
| 8.4.0 | str_getcsv | Sich auf den Standardwert von escape zu verlassen, ist nun veraltet. |
| str_getcsv | Ein ValueError wird nun ausgelöst, wenn separator, enclosure oder escape ungültig sind. Dies entspricht dem Verhalten von fgetcsv und fputcsv. | |
| strcspn | Wenn vor PHP 8.4.0 characters eine leere Zeichenkette war, wurde die Suche fälschlicherweise beim ersten Null-Byte in string beendet. | |
| 8.3.0 | number_format | Behandlung negativer Werte für decimals hinzugefügt. |
| str_getcsv | Eine leere Zeichenkette wird anstelle einer Zeichenkette mit einem einzelnen Null-Byte für das letzte Feld zurückgegeben, wenn es nur einen nicht abgeschlossenen Feld-Begrenzer enthält. | |
| strrchr | Der Parameter before_needle wurde hinzugefügt. | |
| strtok | Wenn token nicht angegeben wurde, wird nun ein Fehler der Stufe E_WARNING ausgegeben. | |
| 8.2.0 | lcfirst | Die Umwandlung von Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es werden nur ASCII-Zeichen umgewandelt. |
| str_ireplace | Die Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es wird nur noch die Groß- und Kleinschreibung von ASCII-Bytes verglichen. Nicht-ASCII-Bytes werden nach ihrem Byte-Wert verglichen. | |
| str_split | Wenn string eine leere Zeichenkette ist, wird nun ein leeres Array zurückgegeben; davor wurde ein Array mit einer einzelnen leeren Zeichenkette zurückgegeben. | |
| strcasecmp | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| strcmp | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| stripos | Die Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es wird nur noch die Groß- und Kleinschreibung von ASCII-Bytes verglichen. Nicht-ASCII-Bytes werden nach ihrem Byte-Wert verglichen. | |
| stristr | Die Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es wird nur noch die Groß- und Kleinschreibung von ASCII-Bytes verglichen. Nicht-ASCII-Bytes werden nach ihrem Byte-Wert verglichen. | |
| strnatcasecmp | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| strnatcmp | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| strncasecmp | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| strncmp | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| strripos | Die Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es wird nur noch die Groß- und Kleinschreibung von ASCII-Bytes verglichen. Nicht-ASCII-Bytes werden nach ihrem Byte-Wert verglichen. | |
| strtolower | Die Umwandlung von Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es werden nur ASCII-Zeichen umgewandelt. | |
| strtoupper | Die Umwandlung von Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es werden nur ASCII-Zeichen umgewandelt. | |
| substr_compare | Diese Funktion gibt nicht mehr garantiert strlen($string1) - strlen($string2) zurück, wenn die Längen der Zeichenketten nicht gleich sind, sondern kann nun stattdessen -1 oder 1 zurückgeben. | |
| ucfirst | Die Umwandlung von Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es werden nur ASCII-Zeichen umgewandelt. | |
| ucwords | Die Umwandlung von Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale eingestellten Locale ab. Es werden nur ASCII-Zeichen umgewandelt. | |
| utf8_decode | Diese Funktion ist veraltet. | |
| utf8_encode | Diese Funktion ist veraltet. | |
| 8.1.0 | get_html_translation_table | flags geändert von ENT_COMPAT zu ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401. |
| html_entity_decode | flags geändert von ENT_COMPAT zu ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401. | |
| htmlentities | flags geändert von ENT_COMPAT zu ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401. | |
| htmlspecialchars | flags geändert von ENT_COMPAT zu ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401. | |
| htmlspecialchars_decode | flags geändert von ENT_COMPAT zu ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401. | |
| 8.0.0 | convert_cyr_string | Diese Funktion wurde entfernt. |
| convert_uuencode | Vor dieser Version wurde beim Versuch, eine leere Zeichenkette zu konvertieren, ohne besonderen Grund false zurückgegeben. | |
| count_chars | Vor dieser Version hat die Funktion bei Auftreten eines Fehlers false zurückgegeben. | |
| crypt | salt ist nicht mehr optional. | |
| explode | explode löst nun einen ValueError aus, wenn an den Parameter separator eine leere Zeichenkette ("") übergeben wird. Bisher gab explode stattdessen false zurück. | |
| fprintf | Diese Funktion gibt bei Auftreten eines Fehlers nicht mehr false zurück. | |
| fprintf | Wenn die Anzahl der Argumente Null ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| fprintf | Wenn [width] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen einen E_WARNING aus. | |
| fprintf | Wenn [precision] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| fprintf | Wenn weniger Argumente angegeben werden als nötig, löst diese Funktion einen ArgumentCountError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| hebrevc | Diese Funktion wurde entfernt. | |
| html_entity_decode | encoding ist jetzt nullable (akzeptiert den null-Wert). | |
| htmlentities | encoding ist jetzt nullable (akzeptiert den null-Wert). | |
| implode | Die Übergabe des separators nach dem array wird nicht mehr unterstützt. | |
| levenshtein | Vor dieser Version musste levenshtein entweder mit zwei oder fünf Argumenten aufgerufen werden. | |
| levenshtein | Vor dieser Version gab levenshtein -1 zurück, wenn eines der Argumente länger als 255 Zeichen war. | |
| metaphone | Die Funktion gab bei Auftreten eines Fehlers false zurück. | |
| money_format | Diese Funktion wurde entfernt. | |
| number_format | Vor dieser Version akzeptierte number_format einen, zwei oder vier Parameter (aber nicht drei). | |
| parse_str | result ist nicht mehr optional. | |
| printf | Diese Funktion gibt bei Auftreten eines Fehlers nicht mehr false zurück. | |
| printf | Wenn die Anzahl der Argumente Null ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| printf | Wenn [width] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen einen E_WARNING aus. | |
| printf | Wenn [precision] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| printf | Wenn weniger Argumente angegeben werden als nötig, löst diese Funktion einen ArgumentCountError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| soundex | Vor dieser Version wurde beim Aufruf der Funktion mit einer leeren Zeichenkette ohne besonderen Grund false zurückgegeben. | |
| sprintf | Diese Funktion gibt bei Auftreten eines Fehlers nicht mehr false zurück. | |
| sprintf | Wenn die Anzahl der Argumente Null ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| sprintf | Wenn [width] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen einen E_WARNING aus. | |
| sprintf | Wenn [precision] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| sprintf | Wenn weniger Argumente angegeben werden als nötig, löst diese Funktion einen ArgumentCountError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| str_split | Wenn der Parameter length kleiner ist als 1, wird nun ein ValueError ausgelöst; davor wurde ein Fehler der Stufe E_WARNING ausgelöst und die Funktion gab false zurück. | |
| str_word_count | characters ist jetzt nullable (akzeptiert den NULL-Wert). | |
| strcspn | length ist jetzt nullable (akzeptiert den null-Wert). | |
| strip_tags | allowed_tags ist jetzt nullable (akzeptiert den NULL-Wert). | |
| stripos | needle akzeptiert nun eine leere Zeichenkette. | |
| stripos | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| stristr | needle akzeptiert nun eine leere Zeichenkette. | |
| stristr | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| strpos | needle akzeptiert nun eine leere Zeichenkette. | |
| strpos | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| strrchr | needle akzeptiert nun eine leere Zeichenkette. | |
| strrchr | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| strripos | needle akzeptiert nun eine leere Zeichenkette. | |
| strripos | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| strrpos | needle akzeptiert nun eine leere Zeichenkette. | |
| strrpos | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| strspn | length ist jetzt nullable (akzeptiert den null-Wert). | |
| strstr | needle akzeptiert nun eine leere Zeichenkette. | |
| strstr | Die Übergabe eines Integer als needle wird nicht mehr unterstützt. | |
| substr | length ist jetzt nullable (akzeptiert den null-Wert). Wenn length explizit auf null gesetzt wird, gibt die Funktion einen Teilstring zurück, der am Ende des Strings endet, während sie vorher einen leeren String zurückgegeben hat. | |
| substr | Die Funktion gibt einen leeren String zurück, wo sie vorher false zurückgegeben hat. | |
| substr_compare | length ist nun nullable (akzeptiert den null-Wert). | |
| substr_count | length ist jetzt ein Nullable-Typ. | |
| substr_replace | length ist jetzt ein Nullable-Typ. | |
| vfprintf | Diese Funktion gibt bei Auftreten eines Fehlers nicht mehr false zurück. | |
| vfprintf | Wenn die Anzahl der Argumente Null ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vfprintf | Wenn [width] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vfprintf | Wenn [precision] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vfprintf | Wenn weniger Argumente angegeben werden als nötig, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vprintf | Diese Funktion gibt bei Auftreten eines Fehlers nicht mehr false zurück. | |
| vprintf | Wenn die Anzahl der Argumente Null ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vprintf | Wenn [width] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vprintf | Wenn [precision] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vprintf | Wenn weniger Argumente angegeben werden als nötig, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vsprintf | Diese Funktion gibt bei Auftreten eines Fehlers nicht mehr false zurück. | |
| vsprintf | Wenn die Anzahl der Argumente Null ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vsprintf | Wenn [width] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vsprintf | Wenn [precision] kleiner als Null oder größer als PHP_INT_MAX ist, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| vsprintf | Wenn weniger Argumente angegeben werden als nötig, löst diese Funktion einen ValueError aus; vorher gab sie stattdessen eine E_WARNING aus. | |
| wordwrap | Wenn break eine leere Zeichenkette ist, wird ein ValueError geworfen; zuvor wurde in diesem Fall ein E_WARNING ausgegeben und false zurückgegeben. | |
| 7.4.0 | chr | Die Funktion akzeptiert nicht unterstütze codepoints nicht mehr stillschweigend und setzt diese auf 0. |
| convert_cyr_string | Diese Funktion wurde als veraltet eingestuft. | |
| hebrevc | Diese Funktion wurde als veraltet eingestuft. | |
| implode | Das Übergeben des separators nach dem array (d. h. nicht die dokumentierte Reihenfolge der Parameter zu verwenden) wird missbilligt. | |
| money_format | Diese Funktion wurde als veraltet eingestuft. Stattdessen soll NumberFormatter::formatCurrency verwendet werden. | |
| str_getcsv | Der Parameter escape interpretiert nun eine leere Zeichenkette als Signal, um den proprietären Maskierungsmechanismus zu deaktivieren. Zuvor wurde eine leere Zeichenkette wie der Vorgabewert behandelt. | |
| strip_tags | Der Parameter allowed_tags akzeptiert nun alternativ ein Array. | |
| 7.3.5 | substr_compare | offset kann nun gleich der Länge von haystack sein. |
| 7.3.0 | stripos | Die Übergabe eines Integer als needle wird missbilligt. |
| stristr | Die Übergabe eines Integer als needle wird missbilligt. | |
| strpos | Die Übergabe eines Integer als needle wird missbilligt. | |
| strrchr | Die Übergabe eines Integer als needle wird missbilligt. | |
| strripos | Die Übergabe eines Integer als needle wird missbilligt. | |
| strrpos | Die Übergabe eines Integer als needle wird missbilligt. | |
| strstr | Die Übergabe eines Integer als needle wird missbilligt. | |
| 7.2.18 | substr_compare | offset kann nun gleich der Länge von haystack sein. |
| 7.2.0 | number_format | number_format wurde geändert, so dass es nicht mehr -0 zurückgeben kann; zuvor konnte -0 zurückgegeben werden, z. B. wenn num gleich -0.01 war. |
| parse_str | Die Verwendung von parse_str ohne den zweiten Parameter erzeugt nun einen E_DEPRECATED-Fehler. | |
| utf8_decode | Diese Funktion wurde von der Erweiterung XML in den Kern von PHP verschoben. In früheren Versionen war diese Funktion nur verfügbar, wenn die Erweiterung XML installiert war. | |
| utf8_encode | Diese Funktion wurde von der Erweiterung XML in den Kern von PHP verschoben. In früheren Versionen war diese Funktion nur verfügbar, wenn die Erweiterung XML installiert war. | |
| 7.1.0 | str_shuffle | Der interne Zufallsalgorithmus wurde geändert, und verwendet nun den Mersenne Twister Zufallszahlengenerator statt der rand Funktion von libc. |
| stripos | Unterstützung für negative offset-Werte wurde hinzugefügt. | |
| strpos | Unterstützung für negative offset-Werte wurde hinzugefügt. | |
| substr_count | Unterstützung für negative offset- und length-Argumente wurde hinzugefügt. length kann nun auch 0 sein. |