bug48147.phpt 856 B

123456789101112131415161718192021222324252627
  1. --TEST--
  2. Bug #48147 (iconv with //IGNORE cuts the string)
  3. --EXTENSIONS--
  4. iconv
  5. --FILE--
  6. <?php
  7. $text = "aa\xC3\xC3\xC3\xB8aa";
  8. var_dump(iconv("UTF-8", "UTF-8", $text));
  9. var_dump(urlencode(iconv("UTF-8", "UTF-8//IGNORE", $text)));
  10. // only invalid
  11. var_dump(urlencode(iconv("UTF-8", "UTF-8//IGNORE", "\xC3")));
  12. // start invalid
  13. var_dump(urlencode(iconv("UTF-8", "UTF-8//IGNORE", "\xC3\xC3\xC3\xB8aa")));
  14. // finish invalid
  15. var_dump(urlencode(iconv("UTF-8", "UTF-8//IGNORE", "aa\xC3\xC3\xC3")));
  16. ?>
  17. --EXPECTF--
  18. Notice: iconv(): Detected an illegal character in input string in %s on line %d
  19. bool(false)
  20. string(10) "aa%C3%B8aa"
  21. Notice: iconv(): Detected an incomplete multibyte character in input string in %s on line %d
  22. string(0) ""
  23. string(8) "%C3%B8aa"
  24. Notice: iconv(): Detected an incomplete multibyte character in input string in %s on line %d
  25. string(0) ""