123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- --TEST--
- Unicode case mapping
- --EXTENSIONS--
- mbstring
- --FILE--
- <?php
- function toCases($str) {
- echo "String: $str\n";
- echo "Lower: ", mb_convert_case($str, MB_CASE_LOWER), "\n";
- echo "Lower Simple: ", mb_convert_case($str, MB_CASE_LOWER_SIMPLE), "\n";
- echo "Upper: ", mb_convert_case($str, MB_CASE_UPPER), "\n";
- echo "Upper Simple: ", mb_convert_case($str, MB_CASE_UPPER_SIMPLE), "\n";
- echo "Title: ", mb_convert_case($str, MB_CASE_TITLE), "\n";
- echo "Title Simple: ", mb_convert_case($str, MB_CASE_TITLE_SIMPLE), "\n";
- echo "Fold: ", mb_convert_case($str, MB_CASE_FOLD), "\n";
- echo "Fold Simple: ", mb_convert_case($str, MB_CASE_FOLD_SIMPLE), "\n";
- echo "\n";
- }
- toCases("ß");
- toCases("ff");
- toCases("İ");
- // Make sure that case-conversion in Turkish still works correctly.
- // Using the language-agnostic Unicode case mappings would result in
- // characters that are illegal under ISO-8859-9.
- mb_internal_encoding('ISO-8859-9');
- // Capital I with dot (U+0130)
- $str = "\xdd";
- echo bin2hex(mb_convert_case($str, MB_CASE_LOWER)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_LOWER_SIMPLE)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD_SIMPLE)), "\n";
- echo "\n";
- // Lower i without dot (U+0131)
- $str = "\xfd";
- echo bin2hex(mb_convert_case($str, MB_CASE_UPPER)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_UPPER_SIMPLE)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD_SIMPLE)), "\n";
- echo "\n";
- // Capital I without dot (U+0049)
- $str = "\x49";
- echo bin2hex(mb_convert_case($str, MB_CASE_LOWER)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_LOWER_SIMPLE)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD_SIMPLE)), "\n";
- echo "\n";
- // Lower i with dot (U+0069)
- $str = "\x69";
- echo bin2hex(mb_convert_case($str, MB_CASE_UPPER)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_UPPER_SIMPLE)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD)), "\n";
- echo bin2hex(mb_convert_case($str, MB_CASE_FOLD_SIMPLE)), "\n";
- ?>
- --EXPECT--
- String: ß
- Lower: ß
- Lower Simple: ß
- Upper: SS
- Upper Simple: ß
- Title: Ss
- Title Simple: ß
- Fold: ss
- Fold Simple: ß
- String: ff
- Lower: ff
- Lower Simple: ff
- Upper: FF
- Upper Simple: ff
- Title: Ff
- Title Simple: ff
- Fold: ff
- Fold Simple: ff
- String: İ
- Lower: i̇
- Lower Simple: i
- Upper: İ
- Upper Simple: İ
- Title: İ
- Title Simple: İ
- Fold: i̇
- Fold Simple: İ
- 69
- 69
- 69
- 69
- 49
- 49
- fd
- fd
- fd
- fd
- fd
- fd
- dd
- dd
- 69
- 69
|