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: