PHP 8.4.2 Released!

変更履歴

この拡張モジュールのクラス/関数/メソッドには次のような変更がありました。

VersionFunctionDescription
8.4.0strcspnPHP 8.4.0 より前のバージョンでは、 characters が空の文字列の場合、 string 内の最初の null バイトで探索が誤って停止してしまうことがありました。
8.3.0strrchrbefore_needle が追加されました。
 strtoktoken が渡されない場合、E_WARNING が発生するようになりました。
8.2.0lcfirstケース変換は、setlocale で設定されたロケールに依存しなくなりました。 ASCII 文字のみが変換されます。
 str_ireplaceケースフォールディングは、setlocale で設定されたロケールに依存しなくなりました。 ASCII のケースフォールディングのみが行われます。 ASCII でないバイト列は、バイト値として比較されます。
 str_splitstring が空の場合、 空の配列が返されるようになりました。 これより前のバージョンでは、空文字列がひとつ入った配列が返されていました。
 strcasecmpこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 strcmpこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 striposケースフォールディングは、setlocale で設定されたロケールに依存しなくなりました。 ASCII のケースフォールディングのみが行われます。 ASCII でないバイト列は、バイト値として比較されます。
 stristrケースフォールディングは、setlocale で設定されたロケールに依存しなくなりました。 ASCII のケースフォールディングのみが行われます。 ASCII でないバイト列は、バイト値として比較されます。
 strnatcasecmpこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 strnatcmpこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 strncasecmpこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 strncmpこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 strriposケースフォールディングは、setlocale で設定されたロケールに依存しなくなりました。 ASCII のケースフォールディングのみが行われます。 ASCII でないバイト列は、バイト値として比較されます。
 strtolowerケース変換は、setlocale で設定されたロケールに依存しなくなりました。 ASCII 文字のみが変換されます。
 strtoupperケース変換は、setlocale で設定されたロケールに依存しなくなりました。 ASCII 文字のみが変換されます。
 substr_compareこれより前のバージョンで負の数と正の数を返していた場合に、 この関数は -1 と 1 を返すようになりました。
 ucfirstケース変換は、setlocale で設定されたロケールに依存しなくなりました。 ASCII 文字のみが変換されます。
 ucwordsケース変換は、setlocale で設定されたロケールに依存しなくなりました。 ASCII 文字のみが変換されます。
 utf8_decodeこの関数は、推奨されなくなりました。
 utf8_encodeこの関数は、推奨されなくなりました。
8.1.0get_html_translation_tableflags のデフォルト値が ENT_COMPAT から ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 に変更されました。
 html_entity_decodeflags のデフォルト値が ENT_COMPAT から ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 に変更されました。
 htmlentitiesflags のデフォルト値が ENT_COMPAT から ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 に変更されました。
 htmlspecialcharsflags のデフォルト値が ENT_COMPAT から ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 に変更されました。
 htmlspecialchars_decodeflags のデフォルト値が ENT_COMPAT から ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 に変更されました。
8.0.0convert_uuencodeこれより前のバージョンでは、 空文字列を変換しようとすると、特別な理由がないのに false を返していました。
 count_charsこれより前のバージョンでは、この関数は失敗時に false を返していました。
 cryptsalt は、オプションではなくなりました。
 explode引数 separator に空文字列 ("") を渡した場合、 ValueError をスローするようになりました。 それより前のバージョンでは、 explode は false を返していました。
 fprintfこの関数は、失敗時に false を返さなくなりました。
 fprintf引数の数が0だった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 fprintf[width] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 fprintf[precision] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 fprintf引数が必要な数より少なかった場合、 ArgumentCountError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 html_entity_decodeencoding は、nullable になりました。
 htmlentitiesencoding は、nullable になりました。
 implodearray の後に separator を渡すことは、サポートされなくなりました。
 levenshteinこれより前のバージョンでは、 引数を2個、または5個指定して呼び出さなければなりませんでした。
 levenshteinこれより前のバージョンでは、 引数文字列の一つが 255 文字の制限より長い場合に -1 を返していました。
 metaphoneこの関数は、失敗時に false を返さなくなりました。
 number_formatこれより前のバージョンでは、 number_format 関数は 引数を1個、2個、または4個受け入れていました(つまり、3個はダメでした)。
 parse_strresult は、オプションではなくなりました。
 printfこの関数は、失敗時に false を返さなくなりました。
 printf引数の数が0だった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 printf[width] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 printf[precision] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 printf引数が必要な数より少なかった場合、 ArgumentCountError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 soundexこれより前のバージョンでは、 空文字列をこの関数に渡すと、特別な理由がないのに false を返していました。
 sprintfこの関数は、失敗時に false を返さなくなりました。
 sprintf引数の数が0だった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 sprintf[width] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 sprintf[precision] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 sprintf引数が必要な数より少なかった場合、 ArgumentCountError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 str_splitlength が1より小さい場合、 ValueError がスローされるようになりました。 それより前のバージョンでは、 E_WARNING レベルの警告が発生し、 false を返していました。
 str_word_countcharacters は、nullable になりました。
 strcspnlength は、nullable になりました。
 strip_tagsallowed_tags は、nullable になりました。
 striposneedle は、空文字列を受け入れるようになりました。
 striposneedle に数値を渡すことはサポートされなくなりました。
 stristrneedle は、空文字列を受け入れるようになりました。
 stristrneedle に数値を渡すことはサポートされなくなりました。
 strposneedle は、空文字列を受け入れるようになりました。
 strposneedle に数値を渡すことはサポートされなくなりました。
 strrchrneedle は、空文字列を受け入れるようになりました。
 strrchrneedle に数値を渡すことはサポートされなくなりました。
 strriposneedle は、空文字列を受け入れるようになりました。
 strriposneedle に数値を渡すことはサポートされなくなりました。
 strrposneedle は、空文字列を受け入れるようになりました。
 strrposneedle に数値を渡すことはサポートされなくなりました。
 strspnlength は、nullable になりました。
 strstrneedle は、空文字列を受け入れるようになりました。
 strstrneedle に数値を渡すことはサポートされなくなりました。
 substrlength は、nullable になりました。 length に明示的に null を設定すると、 文字列の最後までを含む部分文字列を返すようになっています。 これより前のバージョンでは、空文字列を返していました。
 substrこの関数は、前のバージョンで false を返す場合に、空文字列を返すようになりました。
 substr_comparelength は、nullable になりました。
 substr_countlength は、nullable になりました。
 substr_replacelength は、nullable になりました。
 vfprintfこの関数は、失敗時に false を返さなくなりました。
 vfprintf引数の数が0だった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vfprintf[width] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vfprintf[precision] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vfprintf引数が必要な数より少なかった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vprintfこの関数は、失敗時に false を返さなくなりました。
 vprintf引数の数が0だった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vprintf[width] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vprintf[precision] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vprintf引数が必要な数より少なかった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vsprintfこの関数は、失敗時に false を返さなくなりました。
 vsprintf引数の数が0だった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vsprintf[width] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vsprintf[precision] の値が0より小さかったり、 PHP_INT_MAX より大きい場合に、 ValueError をスローするようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 vsprintf引数が必要な数より少なかった場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、代わりに E_WARNING を発生させていました。
 wordwrapbreak が空文字列の場合、 ValueError がスローされるようになりました。 これより前のバージョンでは、 E_WARNING が発生し、false を返していました。
7.4.0chrcodepoint に対して、 サポートされていない入力が与えられた場合、 黙って0 にキャストする動作をしなくなりました。
 implodearray の後に separator を渡すこと (つまり、古いシグネチャを使うこと) は、推奨されなくなりました。
 money_formatこの関数は非推奨になりました。 代わりに、NumberFormatter::formatCurrency を使ってください。
 str_getcsvescape 引数は、 空文字列を、(RFC 4180 に準拠していない) 独自仕様のエスケープ機構を無効にするシグナルとして解釈するようになりました。 これより前のバージョンでは、空文字列はデフォルト値のように扱われていました。
 strip_tagsallowed_tags は、array も受け入れるようになりました。
7.3.5substr_compareoffset の値は、 haystack の長さと等しくても問題なくなりました。
7.3.0striposneedle に数値を渡すことは非推奨になりました。
 stristrneedle に数値を渡すことは非推奨になりました。
 strposneedle に数値を渡すことは非推奨になりました。
 strrchrneedle に数値を渡すことは非推奨になりました。
 strriposneedle に数値を渡すことは非推奨になりました。
 strrposneedle に数値を渡すことは非推奨になりました。
 strstrneedle に数値を渡すことは非推奨になりました。
7.2.18substr_compareoffset の値は、 haystack の長さと等しくても問題なくなりました。
7.2.0number_formatnumber_format は、 -0 を返さないように変更されました。 これより前のバージョンでは、 num が -0.01 のようなケースで -0 が返される場合がありました。
 parse_strparse_str関数を 第二引数を指定せずに使うと E_DEPRECATED レベルの警告が発生するようになりました。
 utf8_decodeこの関数は、XML拡張モジュールから PHP のコアに移動しました。 これより前のバージョンでは、 この関数は XML拡張モジュール をインストールしていた場合にのみ利用可能でした。
 utf8_encodeこの関数は、XML拡張モジュール から PHP のコアに移動しました。 これより前のバージョンでは、 この関数は XML拡張モジュール をインストールしていた場合にのみ利用可能でした。
7.1.0str_shuffle内部的なランダム化アルゴリズムは、 libc の rand 関数ではなく、 メルセンヌツイスタ 乱数生成器を使うように 変更されました
 stripos負の offset をサポートするようになりました。
 strpos負の offset をサポートするようになりました。
 substr_count負の offset と length をサポートするようになりました。 length は、0 を指定しても問題ありません。
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top