Php/docs/migration56.deprecated
Deprecated features in PHP 5.6.x
Calls from incompatible context
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:
<?phpclass 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
$HTTP_RAW_POST_DATA
and 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
.
iconv and mbstring encoding settings
The iconv and
mbstring configuration options related
to encoding have been deprecated in favour of
default_charset
.
The deprecated options are:
-
iconv.input_encoding
-
iconv.output_encoding
-
iconv.internal_encoding
-
mbstring.http_input
-
mbstring.http_output
-
mbstring.internal_encoding