« 新機能
変更された関数 »

PHP 5.6.x で推奨されなくなる機能

非互換のコンテキストからの呼び出し

非互換のコンテキストからのメソッド呼び出しが非推奨となり、 E_STRICT ではなく E_DEPRECATED が発生するようになりました。 この機能は、将来のバージョンの PHP で削除される予定です。

具体例を示します。

<?php
class A {
    function f() { echo get_class($this); }
}

class B {
    function f() { A::f(); }
}

(new B)->f();
?>

上の例の出力は以下となります。

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 および always_populate_raw_post_data

always_populate_raw_post_data を使うと、$HTTP_RAW_POST_DATA に値が入っている場合に E_DEPRECATED が発生するようになりました。 新しいコードでは、$HTTP_RAW_POST_DATA ではなく php://input を使うようにしましょう。$HTTP_RAW_POST_DATA は、将来のバージョンで削除される予定です。 この新しい振る舞い ($HTTP_RAW_POST_DATA が定義されておらず、E_DEPRECATED が発生しない状態) を試すには、 always_populate_raw_post_data に -1 を設定します。

iconv および mbstring のエンコーディング設定

iconv および mbstring の、エンコーディングに関するオプションが非推奨となりました。 代わりに default_charset を使いましょう。 非推奨になったオプションは、以下のとおりです。

関連キーワード:
iconv   mbstring   encoding   推奨   非推奨   always   populate   post   input   コンテキスト   将来   予定   エンコーディング   output   internal   http   新機能   移行   具体例   Deprecated   static   method   called   statically   assuming
関連する関数・ページ:
iconv.configuration   function.iconv-set-encoding   function.iconv-get-encoding   function.ob-iconv-handler   ref.iconv   function.iconv