Methodenaufrufe aus inkompatiblem Kontext sind nun missbilligt, und rufen
einen Fehler der Stufe E_DEPRECATED
hervor
anstelle von E_STRICT
. Unterstützung für
derartige Aufrufe wird in einer zukünftigen Version von PHP entfernt.
Ein Beispiel für einen derartigen Aufruf:
<?php
class A {
function f() { echo get_class($this); }
}
class B {
function f() { A::f(); }
}
(new B)->f();
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Deprecated: Non-static method A::f() should not be called statically, assuming $this from incompatible context in - on line 7 B
always_populate_raw_post_data
ruft nun einen Fehler der Stufe E_DEPRECATED
hervor, wenn
$HTTP_RAW_POST_DATA befüllt wird.
Neuer Code sollte php://input
anstelle von $HTTP_RAW_POST_DATA verwenden, welches
in einer zukünftigen Version entfernt wird. Es kann bereits jetzt das neue
Verhalten (bei dem $HTTP_RAW_POST_DATA nie befüllt und
damit kein E_DEPRECATED
-Fehler hervorgerufen wird)
verwendet werden, wenn
always_populate_raw_post_data
auf -1 gestellt wird.
Die Konfigurationseinstellungen für die Zeichenkodierung der Funktionen
iconv und mbstring
werden nun zugunsten von
default_charset
als missbilligt eingestuft.
Die missbilligten Optionen sind: