mb_strtolower_variation4.phpt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. --TEST--
  2. Test mb_strtolower() function : usage variations - pass different characters to check conversion is correct
  3. --EXTENSIONS--
  4. mbstring
  5. --FILE--
  6. <?php
  7. /*
  8. * Pass accented characters and Russian characters to check case conversion is correct
  9. */
  10. echo "*** Testing mb_strtolower() : usage variations ***\n";
  11. $uppers = array('Basic Latin' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
  12. 'Characters With Accents' => base64_decode('w4DDgcOCw4PDhMOFw4bDh8OIw4nDisOLw4zDjcOOw4/DkMORw5LDk8OUw5XDlg=='),
  13. 'Russian' => base64_decode('0JDQkdCS0JPQlNCV0JbQlw=='));
  14. $lowers = array('Basic Latin' => 'abcdefghijklmnopqrstuvwxyz',
  15. 'Characters With Accents' => base64_decode('w6DDocOiw6PDpMOlw6bDp8Oow6nDqsOrw6zDrcOuw6/DsMOxw7LDs8O0w7XDtg=='),
  16. 'Russian' => base64_decode('0LDQsdCy0LPQtNC10LbQtw=='));
  17. foreach ($uppers as $lang => $sourcestring) {
  18. echo "\n-- $lang --\n";
  19. $a = mb_strtolower($sourcestring, 'utf-8');
  20. var_dump(base64_encode($a));
  21. if ($a == $lowers[$lang]) {
  22. echo "Correctly Converted\n";
  23. } else {
  24. echo "Incorrectly Converted\n";
  25. }
  26. }
  27. echo "Done";
  28. ?>
  29. --EXPECT--
  30. *** Testing mb_strtolower() : usage variations ***
  31. -- Basic Latin --
  32. string(36) "YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXo="
  33. Correctly Converted
  34. -- Characters With Accents --
  35. string(64) "w6DDocOiw6PDpMOlw6bDp8Oow6nDqsOrw6zDrcOuw6/DsMOxw7LDs8O0w7XDtg=="
  36. Correctly Converted
  37. -- Russian --
  38. string(24) "0LDQsdCy0LPQtNC10LbQtw=="
  39. Correctly Converted
  40. Done