bug43994.phpt 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. --TEST--
  2. Test mb_ereg() function : mb_ereg 'successfully' matching incorrectly
  3. --EXTENSIONS--
  4. mbstring
  5. --SKIPIF--
  6. <?php
  7. function_exists('mb_ereg') or die("skip mb_ereg() is not available in this build");
  8. ?>
  9. --FILE--
  10. <?php
  11. /*
  12. * mb_ereg 'successfully' matching incorrectly:
  13. * Bug now seems to be fixed - error message is now generated when an 'empty'
  14. * pattern is supplied to mb_ereg. Similar error message to ereg().
  15. */
  16. $inputs = array(false, FALSE, "", '');
  17. $iterator = 1;
  18. foreach($inputs as $input) {
  19. if(@is_array($mb_regs)){
  20. $mb_regs = '';
  21. }
  22. echo "\n-- Iteration $iterator --\n";
  23. echo "Without \$regs arg:\n";
  24. try {
  25. var_dump( mb_ereg($input, 'hello, world') );
  26. } catch (\ValueError $e) {
  27. echo $e->getMessage() . \PHP_EOL;
  28. }
  29. echo "With \$regs arg:\n";
  30. try {
  31. var_dump(mb_ereg($input, 'hello, world', $mb_regs));
  32. } catch (\ValueError $e) {
  33. echo $e->getMessage() . \PHP_EOL;
  34. }
  35. var_dump($mb_regs);
  36. $iterator++;
  37. };
  38. ?>
  39. --EXPECT--
  40. -- Iteration 1 --
  41. Without $regs arg:
  42. mb_ereg(): Argument #1 ($pattern) must not be empty
  43. With $regs arg:
  44. mb_ereg(): Argument #1 ($pattern) must not be empty
  45. NULL
  46. -- Iteration 2 --
  47. Without $regs arg:
  48. mb_ereg(): Argument #1 ($pattern) must not be empty
  49. With $regs arg:
  50. mb_ereg(): Argument #1 ($pattern) must not be empty
  51. NULL
  52. -- Iteration 3 --
  53. Without $regs arg:
  54. mb_ereg(): Argument #1 ($pattern) must not be empty
  55. With $regs arg:
  56. mb_ereg(): Argument #1 ($pattern) must not be empty
  57. NULL
  58. -- Iteration 4 --
  59. Without $regs arg:
  60. mb_ereg(): Argument #1 ($pattern) must not be empty
  61. With $regs arg:
  62. mb_ereg(): Argument #1 ($pattern) must not be empty
  63. NULL