engine_assignExecutionOrder_009.phpt 690 B

123456789101112131415161718192021222324252627282930313233343536
  1. --TEST--
  2. Execution ordering with comparison operators.
  3. --FILE--
  4. <?php
  5. function f($x) {
  6. echo "f($x) ";
  7. return $x;
  8. }
  9. echo "Function call args:\n";
  10. var_dump(f($i=0) < f(++$i));
  11. var_dump(f($i=0) <= f(++$i));
  12. var_dump(f($i=0) > f(++$i));
  13. var_dump(f($i=0) >= f(++$i));
  14. echo "\nArray indices:\n";
  15. $a[1][2] = 0;
  16. $a[3][4] = 1;
  17. $i=0;
  18. var_dump($a[$i=1][++$i] < $a[++$i][++$i]);
  19. var_dump($a[$i=1][++$i] <= $a[++$i][++$i]);
  20. var_dump($a[$i=1][++$i] > $a[++$i][++$i]);
  21. var_dump($a[$i=1][++$i] >= $a[++$i][++$i]);
  22. ?>
  23. --EXPECT--
  24. Function call args:
  25. f(0) f(1) bool(true)
  26. f(0) f(1) bool(true)
  27. f(0) f(1) bool(false)
  28. f(0) f(1) bool(false)
  29. Array indices:
  30. bool(true)
  31. bool(true)
  32. bool(false)
  33. bool(false)