mb_strpos_basic.phpt 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. --TEST--
  2. Test mb_strpos() function : basic functionality
  3. --EXTENSIONS--
  4. mbstring
  5. --FILE--
  6. <?php
  7. /*
  8. * Test basic functionality of mb_strpos with ASCII and multibyte characters
  9. */
  10. echo "*** Testing mb_strpos() : basic functionality***\n";
  11. mb_internal_encoding('UTF-8');
  12. $string_ascii = 'abc def';
  13. //Japanese string in UTF-8
  14. $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=');
  15. echo "\n-- ASCII string 1 --\n";
  16. var_dump(mb_strpos($string_ascii, 'd', 2, 'ISO-8859-1'));
  17. echo "\n-- ASCII string 2 --\n";
  18. var_dump(mb_strpos($string_ascii, '123'));
  19. echo "\n-- Multibyte string 1 --\n";
  20. $needle1 = base64_decode('5pel5pys6Kqe');
  21. var_dump(mb_strpos($string_mb, $needle1));
  22. echo "\n-- Multibyte string 2 --\n";
  23. $needle2 = base64_decode("44GT44KT44Gr44Gh44Gv44CB5LiW55WM");
  24. var_dump(mb_strpos($string_mb, $needle2));
  25. echo "Done";
  26. ?>
  27. --EXPECT--
  28. *** Testing mb_strpos() : basic functionality***
  29. -- ASCII string 1 --
  30. int(4)
  31. -- ASCII string 2 --
  32. bool(false)
  33. -- Multibyte string 1 --
  34. int(0)
  35. -- Multibyte string 2 --
  36. bool(false)
  37. Done