bug36975.phpt 837 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. --TEST--
  2. Bug #36975 (natcasesort() causes array_pop() to misbehave)
  3. --FILE--
  4. <?php
  5. $a = array('aa', 'aa', 'bb', 'bb', 'cc', 'cc');
  6. $test = natcasesort($a);
  7. if ($test) {
  8. echo "natcasesort success!\n";
  9. }
  10. $val = array_pop($a);
  11. $a[] = $val;
  12. var_dump($a);
  13. $b = array(1 => 'foo', 0 => 'baz');
  14. array_pop($b);
  15. $b[] = 'bar';
  16. array_push($b, 'bar');
  17. print_r($b);
  18. $c = array(0, 0, 0, 0, 0);
  19. asort($c);
  20. array_pop($c);
  21. $c[] = 'foo';
  22. $c[] = 'bar';
  23. var_dump($c);
  24. ?>
  25. --EXPECT--
  26. natcasesort success!
  27. array(6) {
  28. [0]=>
  29. string(2) "aa"
  30. [1]=>
  31. string(2) "aa"
  32. [2]=>
  33. string(2) "bb"
  34. [3]=>
  35. string(2) "bb"
  36. [4]=>
  37. string(2) "cc"
  38. [5]=>
  39. string(2) "cc"
  40. }
  41. Array
  42. (
  43. [1] => foo
  44. [2] => bar
  45. [3] => bar
  46. )
  47. array(6) {
  48. [0]=>
  49. int(0)
  50. [1]=>
  51. int(0)
  52. [2]=>
  53. int(0)
  54. [3]=>
  55. int(0)
  56. [4]=>
  57. string(3) "foo"
  58. [5]=>
  59. string(3) "bar"
  60. }