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 以降から推奨されないとされていました。