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

PHP 4 形式のコンストラクタ

PHP 4 形式のコンストラクタ (クラス名と同じ名前のメソッドを定義するもの) が非推奨となりました。将来的に削除される見込みです。 PHP 7 では、クラス内でこの形式のコンストラクタしか定義されていない場合に E_DEPRECATED が発生します。 __construct() メソッドを実装していれば、この警告は発生しません。

<?php
class foo {
    function 
foo() {
        echo 
'I am the constructor';
    }
}
?>

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

Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; foo has a deprecated constructor in example.php on line 3

非 static メソッドに対する static 呼び出し

static 宣言されていないメソッドに対する static 呼び出しが非推奨となりました。 将来的には削除される見込みです。

<?php
class foo {
    function 
bar() {
        echo 
'I am not static!';
    }
}

foo::bar();
?>

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

Deprecated: Non-static method foo::bar() should not be called statically in - on line 8
I am not static!

password_hash() の salt オプション

password_hash() 関数の salt オプションが非推奨となりました。 これは、開発者が自前で (たいていはセキュアでない) salt を作ってしまうことを避けるためです。 開発者が salt を指定しない場合は、この関数自身が暗号論的にセキュアな salt を生成します。 したがって、もはや自前で salt を作る必要はありません。

capture_session_meta SSL コンテキストオプション

SSL コンテキストオプション capture_session_meta が非推奨となりました。 SSL メタデータは stream_get_meta_data() 関数で利用できるようになります。

LDAP

以下の関数が非推奨になりました。