mb_ord.phpt 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. --TEST--
  2. mb_ord()
  3. --EXTENSIONS--
  4. mbstring
  5. --FILE--
  6. <?php
  7. var_dump(
  8. 0x20bb7 === mb_ord("\u{20bb7}"),
  9. false === mb_ord("\u{d800}"),
  10. 0x50aa === mb_ord("\x8f\xa1\xef", "EUC-JP-2004")
  11. );
  12. // Empty string
  13. try {
  14. var_dump( mb_ord("") );
  15. } catch (\ValueError $e) {
  16. echo $e->getMessage() . \PHP_EOL;
  17. }
  18. // Invalid
  19. try {
  20. var_dump( mb_ord("\u{d800}", "typo") );
  21. } catch (\ValueError $e) {
  22. echo $e->getMessage() . \PHP_EOL;
  23. }
  24. try {
  25. var_dump( mb_ord("\u{d800}", "pass") );
  26. } catch (\ValueError $e) {
  27. echo $e->getMessage() . \PHP_EOL;
  28. }
  29. try {
  30. var_dump( mb_ord("\u{d800}", "jis") );
  31. } catch (\ValueError $e) {
  32. echo $e->getMessage() . \PHP_EOL;
  33. }
  34. try {
  35. var_dump( mb_ord("\u{d800}", "cp50222") );
  36. } catch (\ValueError $e) {
  37. echo $e->getMessage() . \PHP_EOL;
  38. }
  39. try {
  40. var_dump( mb_ord("\u{d800}", "utf-7") );
  41. } catch (\ValueError $e) {
  42. echo $e->getMessage() . \PHP_EOL;
  43. }
  44. mb_internal_encoding("utf-7");
  45. try {
  46. var_dump( mb_ord("\u{d800}") );
  47. } catch (\ValueError $e) {
  48. echo $e->getMessage() . \PHP_EOL;
  49. }
  50. ?>
  51. --EXPECT--
  52. bool(true)
  53. bool(true)
  54. bool(true)
  55. mb_ord(): Argument #1 ($string) must not be empty
  56. mb_ord(): Argument #2 ($encoding) must be a valid encoding, "typo" given
  57. mb_ord(): Argument #2 ($encoding) must be a valid encoding, "pass" given
  58. mb_ord() does not support the "JIS" encoding
  59. mb_ord() does not support the "CP50222" encoding
  60. mb_ord() does not support the "UTF-7" encoding
  61. mb_ord() does not support the "UTF-7" encoding