__call_001.phpt 556 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. --TEST--
  2. ZE2 __call()
  3. --SKIPIF--
  4. <?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
  5. --FILE--
  6. <?php
  7. class Caller {
  8. public $x = array(1, 2, 3);
  9. function __call($m, $a) {
  10. echo "Method $m called:\n";
  11. var_dump($a);
  12. return $this->x;
  13. }
  14. }
  15. $foo = new Caller();
  16. $a = $foo->test(1, '2', 3.4, true);
  17. var_dump($a);
  18. ?>
  19. --EXPECT--
  20. Method test called:
  21. array(4) {
  22. [0]=>
  23. int(1)
  24. [1]=>
  25. string(1) "2"
  26. [2]=>
  27. float(3.4)
  28. [3]=>
  29. bool(true)
  30. }
  31. array(3) {
  32. [0]=>
  33. int(1)
  34. [1]=>
  35. int(2)
  36. [2]=>
  37. int(3)
  38. }