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

PHP コア

大文字小文字を区別しない定数

大文字小文字を区別せず、定数を宣言することは推奨されません。 define() 関数の第3引数に true を渡すと、推奨されない警告が生成されるようになりました。宣言された定数と異なるケースで定数を使うことも推奨されません。

名前空間の中で assert() 関数の宣言

名前空間の中で assert() と呼ばれる関数を宣言することは推奨されません。 assert() 関数は PHPエンジンによって特別扱いされることが意図されているため、名前空間の中で同じ関数を宣言されると、一貫しない振る舞いに繋がる可能性があるからです。

string.strip_tags ストリームフィルタ

fgetss() 関数と strip_tags ストリームフィルタ は推奨されません。 このことは SplFileObject::fgetss() メソッドと gzgetss() 関数にも影響します。

データのフィルタリング

FILTER_FLAG_SCHEME_REQUIREDFILTER_FLAG_HOST_REQUIRED を明示的に使うことは推奨されなくなりました。これらは FILTER_VALIDATE_URL に含まれています。

画像処理と GD

image2wbmp() 関数は推奨されなくなりました。

国際化関数

PHP が ICU バージョン56以上とリンクされた状態で Normalizer::NONE を使うと、推奨されない警告が発生するようになりました。

マルチバイト文字列

以下のドキュメントに記されていない mbereg_*() エイリアスは推奨されなくなりました。 対応する mb_ereg_*() 関数を使ってください。

  • mbregex_encoding()
  • mbereg()
  • mberegi()
  • mbereg_replace()
  • mberegi_replace()
  • mbsplit()
  • mbereg_match()
  • mbereg_search()
  • mbereg_search_pos()
  • mbereg_search_regs()
  • mbereg_search_init()
  • mbereg_search_getregs()
  • mbereg_search_getpos()
  • mbereg_search_setpos()

ODBC と DB2 関数 (PDO_ODBC)

ini 設定 pdo_odbc.db2_instance_name は正式に推奨されなくなりました。ドキュメントでは、PHP 5.1.1 以降から推奨されないとされていました。