Open
Description
refs php/php-src@d8c785b
文字幅に関する仕様はPHP: mb_strwidth - Manualで説明されている通りUnicodeのTR-11 EAST ASIAN WIDTHに準拠していますがeaw_table.hは2011年から更新されておらず、PHP 8.1リリース前のmbstringのオーバーホールによってUnicode 14.0に追従しました。
その際、てきめんさん @youkidearitai が指摘するように、2011年以降に追加されたEAWプロパティがF
かW
の文字に関する計算が変わってしまっています。
PHP: mb_strwidth - Manual に関して、以下の対応が必要になりそうです。
- 対象文字に関する記述を調整する
- 変更履歴にPHP 8.1でUnicode 14.0.0準拠になったことを明記する