Methods called from an incompatible context are now deprecated, and will
generate E_DEPRECATED
errors when invoked instead of
E_STRICT
. Support for these calls will be removed in
a future version of PHP.
An example of such a call is:
<?php
class A {
function f() { echo get_class($this); }
}
class B {
function f() { A::f(); }
}
(new B)->f();
?>
The above example will output:
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
always_populate_raw_post_data
will now generate an E_DEPRECATED
error when
$HTTP_RAW_POST_DATA is populated.
New code should use
php://input
instead of $HTTP_RAW_POST_DATA, which will be removed
in a future release. You can opt in for the new behaviour (in which
$HTTP_RAW_POST_DATA is never defined hence no
E_DEPRECATED
error will be generated) by setting
always_populate_raw_post_data
to -1
.
The iconv and
mbstring configuration options related
to encoding have been deprecated in favour of
default_charset
.
The deprecated options are: