PHP 8.5: für CPO relevante Änderungen

Fragen zur Implementierung und/oder Anpassung von ConPresso 4 werden in diesem Forum diskutiert.
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7552
Registriert: 01.01.1970 02:00
Hat sich bedankt: 118 Mal
Danksagung erhalten: 943 Mal

PHP 8.5: für CPO relevante Änderungen

Beitrag von MarkusR »

Die folgenden Dinge erzeugen entweder Fehler oder sind "deprecated" und werden somit bald Fehler erzeugen:

Non-canonical scalar type casts (boolean|double|integer|binary) deprecated
Es muss also die Originalschreibweise genutzt werden, z.B. (int) statt (integer)

SID als Konstante wurde entfernt!
Diese wird in CPO häufig genutzt! In CPO+ Daisy World gibt es daher die Funktion SID(), die die gleiche Information liefert. Grundsätzlich sollte aber geprüft werden, ob die PHPSESSID überhaupt z.B. in URLs erscheinen sollte
-> führt zu unschönen URLs bei Rubrik-Includes und bei Suchmaschinen
-> wird ggf. in CPO+ Daisy World per Systemeinstellung deaktiviert (default), da es dort eine Funktion ist

Stringoperatoren wie htmlspecialchars, addslashes, str_replace, unserialize, urlencode etc. können nicht mehr auf Nicht-Strings (NULL, true, false) angewendet werden

imagedestroy() deprecated
wird seit PHP 8.0 nicht mehr benötigt (es wird kein Speicher mehr freigegeben), da die Grafikbibliothek Objekte nutzt

utf8_encode, utf8_decode deprecated since PHP 8.0
ersetzen durch z.B. mb_convert_encoding($string, 'UTF-8', 'ISO-8859-1');

session_set_save_handler
muss ein Objekt statt Einzelfunktionen als Argument erhalten -> fixed in CPO+ Daisy World

Case statements followed by a semicolon (;) are deprecated, use a colon
muss z.B. in _admin/articles angepasst werden -> fixed in CPO+ Daisy World

to be continued


Insbesondere nicht von mir betreute Module sollten darauf geprüft werden...
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle