変更された関数

PHP コア

  • set_error_handler の引数に null を渡して呼ぶと、 エラーハンドラをリセットできるようになりました。
  • null を渡して呼んだ場合の set_error_handlerset_exception_handler の返り値は、 それぞれ以前のエラーハンドラと例外ハンドラになります。
  • json_encodedepth パラメータを渡せるようになりました。
  • packunpack で "a" や "A" を使ったときの挙動が変わりました。 詳細はこちらを参照ください

intl

  • MessageFormatter::format とその関連関数で、 名前付き引数に対応しました。数値引数との混在も可能です。 これは、PHP を ICU 4.8 以降とリンクした場合に有効になります。
  • MessageFormatter::format とその関連関数で、 引数の数を間違えた場合にエラーが発生しなくなりました。 ただし、プレースホルダの置換は行われません。
  • MessageFormatter::formatMessageFormatter::parse で時刻を扱うときに、 秒単位の精度に縛られなくなりました。
  • IntlDateFormatter::__constructdatefmt_createtimezone 引数で IntlTimeZoneDateTimeZone のオブジェクトが使えるようになり、同じく calendar 引数で IntlCalendar オブジェクトが使えるようになりました。 さらに、タイムゾーンが省略されていて calendar でタイムゾーンが指定されていない場合は、ICU のデフォルトタイムゾーンではなく PHP のデフォルトタイムゾーン (date_default_timezone_get の返す値) を使うようになりました。
  • IntlDateFormatter オブジェクトを作るときに IntlDateFormatter の定数ではなく IntlCalendar のインスタンスを使った場合に、 IntlDateFormatter::getCalendardatefmt_get_calendar が false を返すようになりました。
  • IntlDateFormatter::setCalendardatefmt_set_calendar で、 IntlDateFormatter の定数以外に IntlCalendar オブジェクトも受け付けるようになりました。
  • IntlDateFormatter::formatdatefmt_formatIntlCalendar オブジェクトが使えるようになりました。