generators_to_v8_basic.phpt 506 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. --TEST--
  2. Test V8::executeString() : Generators PHP -> V8
  3. --SKIPIF--
  4. <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
  5. --FILE--
  6. <?php
  7. function TheGenerator()
  8. {
  9. for($i = 0; $i < 4; $i ++) {
  10. yield $i;
  11. }
  12. }
  13. foreach(TheGenerator() as $i) {
  14. var_dump($i);
  15. }
  16. $js = <<<EOJS
  17. for(var i of PHP.gen) {
  18. var_dump(i);
  19. }
  20. EOJS;
  21. $v8 = new V8Js();
  22. $v8->gen = TheGenerator();
  23. $gen = $v8->executeString($js);
  24. ?>
  25. ===EOF===
  26. --EXPECTF--
  27. int(0)
  28. int(1)
  29. int(2)
  30. int(3)
  31. int(0)
  32. int(1)
  33. int(2)
  34. int(3)
  35. ===EOF===