Veraltete Features

PHP-Kern

Verschachtelte ternäre Operatoren ohne explizite Klammern

Verschachtelte ternäre Operationen müssen nun explizit Klammern verwenden, um die Reihenfolge der Operationen festzulegen. Wenn in der Vergangenheit keine Klammern verwendet wurden, führte die Links-Assoziativität in den meisten Fällen nicht zum erwarteten Verhalten.

<?php
5;   // veraltet
(3) ? 5// OK
: (5); // OK
?>

Klammern sind nicht erforderlich, wenn der mittlere Operand umschlossen wird, da dies immer eindeutig ist und nicht durch die Assoziativität beeinflusst wird:

1 ? 2 ? 3 : 4 : 5 // OK

Zugriff auf Array- und Zeichenketten-Offset mit geschweiften Klammern

Die Syntax für den Zugriff auf Array- und String-Offsets mit geschweiften Klammern ist veraltet. Statt $var{$idx} sollte $var[$idx] verwendet werden.

Die Typumwandlung (real) und die Funktion is_real()

Die Typumwandlung (real) ist veraltet, stattdessen (float) verwendet werden.

Die Funktion is_real() ist ebenfalls veraltet, stattdessen sollte is_float() verwendet werden.

Aufhebung der Bindung von $this, wenn $this verwendet wird

Die Bindung von $this an eine nicht-statische Closure aufzuheben, die $this verwendet, ist veraltet.

Schlüsselwort parent ohne übergeordnete Klasse

Die Verwendung von parent innerhalb einer Klasse ohne Elternklasse ist veraltet und wird in Zukunft einen Fehler bei der Kompilierung auslösen. Derzeit wird ein Fehler nur dann erzeugt, wenn zur Laufzeit auf die Elternklasse zugegriffen wird.

INI-Option allow_url_include

Die INI-Direktive allow_url_include ist veraltet. Wenn sie aktiviert ist, wird beim Start ein entsprechender Hinweis erzeugt.

Ungültige Zeichen in Funktionen zur Umwandlung der Basis

Die Übergabe unzulässiger Zeichen an die Funktionen base_convert(), bindec(), octdec() und hexdec() führt nun zu einem Hinweis auf eine veraltete Verwendung. Das Ergebnis wird so berechnet, als gäbe es das unzulässige Zeichen nicht. Führende und nachfolgende Leerzeichen sowie Präfixe wie 0x (je nach Zahlensystem) sind weiterhin zulässig.

Die Anwendung von array_key_exists() auf Objekte

Die Anwendung der Funktion array_key_exists() auf Objekte ist veraltet. Stattdessen sollte entweder isset() oder property_exists() verwendet werden.

Funktionen für "magische Anführungszeichen" (Magic Quotes)

Die Funktionen get_magic_quotes_gpc() und get_magic_quotes_runtime() sind veraltet. Sie geben immer false zurück.

Die Funktion hebrevc()

Die Funktion hebrevc() ist veraltet. Sie kann durch nl2br(hebrev($str)) ersetzt werden oder, besser, indem die Unterstützung von Unicode-RTL genutzt wird.

Die Funktion convert_cyr_string()

Die Funktion convert_cyr_string() ist veraltet. Sie kann durch mb_convert_string(), iconv() oder UConverter ersetzt werden.

Die Funktion money_format()

Die Funktion money_format() ist veraltet. Sie kann durch die Funktionalität der intl-Klasse NumberFormatter ersetzt werden.

Die Funktion ezmlm_hash()

Die Funktion ezmlm_hash() ist veraltet.

Die Funktion restore_include_path()

Die Funktion restore_include_path() ist veraltet. Sie kann durch ini_restore('include_path') ersetzt werden.

Reihenfolge der Parameter bei implode()

Die Übergabe von Parametern an die Funktion implode() in umgekehrter Reihenfolge ist veraltet, statt implode($parts, $glue) sollte implode($glue, $parts) verwendet werden.

COM

Der Import von Typbibliotheken, bei denen die Groß- und Kleinschreibung von Konstanten nicht beachtet wird, ist veraltet.

Filter

Der Filter FILTER_SANITIZE_MAGIC_QUOTES ist veraltet, stattdessen sollte FILTER_SANITIZE_ADD_SLASHES verwendet werden.

Multibyte-Zeichenketten

Bei der Funktion mb_ereg_replace() ist die Übergabe eines Musters, das keine Zeichenkette ist, veraltet. Gegenwärtig werden solche Muster als ASCII-Codepunkte interpretiert. In PHP 8 wird das Muster stattdessen als Zeichenkette interpretiert.

Bei der Funktion mb_strrpos() ist die Übergabe der Kodierung als 3. Parameter veraltet. Stattdessen sollten ein 0-Offset und die Kodierung als 4. Parameter übergeben werden.

Lightweight Directory Access Protocol (LDAP)

Die Funktionen ldap_control_paged_result_response() und ldap_control_paged_result() sind veraltet. Steuerelemente für die Seitennavigation können stattdessen zusammen mit ldap_search() gesendet werden.

Reflection

Der Aufruf von ReflectionType::__toString() erzeugt nun einen Hinweis auf eine veraltete Funktion. Diese Methode wird in der Dokumentation seit PHP 7.1 als veraltet zugunsten von ReflectionNamedType::getName() bezeichnet, hat aber aus technischen Gründen keinen entsprechenden Hinweis erzeugt.

Die export()-Methoden sind in allen Klassen von Reflection veraltet. Stattdessen sollte ein Reflection-Objekt erzeugt werden und dieses in eine Zeichenkette umgewandelt werden:

<?php
// Anstelle von ReflectionClass::export(Foo::class, false):
echo new ReflectionClass(Foo::class), "\n";

// Anstelle von $str = ReflectionClass::export(Foo::class, true):
$str = (string) new ReflectionClass(Foo::class);
?>

Socket

Bei der Funktion socket_addrinfo_lookup() sind die Flags AI_IDN_ALLOW_UNASSIGNED und AI_IDN_USE_STD3_ASCII_RULES veraltet und entsprechen damit der zugrundeliegenden Glibc.

Hier Kannst Du einen Kommentar verfassen


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

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

Grundlagen von Views in MySQL

Views in einer MySQL-Datenbank bieten die Möglichkeit, eine virtuelle Tabelle basierend auf dem Ergebnis einer SQL-Abfrage zu erstellen. ...

admin

Autor : admin
Kategorie: mySQL-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

PopUp-Fenster Edel

verein.cloud (https://www.verein.cloud/)® ist eine cloudbasierte Vereinssoftware für effiziente Mitgliederverwaltung, Beitragsmanagement und Kom ...

Geschrieben von VereinCloud am 25.11.2024 11:10:08
Forum: Apps und PHP Script Gesuche
Ein data POST via Curl funktioniert nicht.

Anmorg93 Respekt, du bist ja nur um rund 10 Jahre zu spät dran.

Geschrieben von scatello am 21.11.2024 10:57:00
Forum: PHP Developer Forum
Ein data POST via Curl funktioniert nicht.

Hey, hatte auch mal das Problem. Oft liegt’s an fehlenden oder falschen Headern. Probier mal:​ $ch = curl_init(); curl_setopt($ch, CURLOPT_UR ...

Geschrieben von Anmorg93 am 21.11.2024 10:48:17
Forum: PHP Developer Forum
Probleme mit einem Linux-Befehl...

guten Tag liebe Community ;) hallo liebe Freunde auf der php-Ressource, hoffe, das landet im richtigen Unterforum also, womit ich im Moment zu ...

Geschrieben von dhubs am 15.11.2024 16:21:52
Forum: Off-Topic Diskussionen