issue_183_003.phpt 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. --TEST--
  2. Test V8::executeString() : Method access on derived classes (V8Js methods)
  3. --SKIPIF--
  4. <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
  5. --FILE--
  6. <?php
  7. class Foo extends \V8Js
  8. {
  9. public function hello()
  10. {
  11. print("Hello World\n");
  12. }
  13. }
  14. $JS = <<< EOT
  15. var_dump(typeof PHP.hello);
  16. var_dump(typeof PHP.executeString);
  17. var_dump(typeof PHP.compileString);
  18. var_dump(typeof PHP.executeScript);
  19. var_dump(typeof PHP.checkString);
  20. var_dump(typeof PHP.getPendingException);
  21. var_dump(typeof PHP.setModuleNormaliser);
  22. var_dump(typeof PHP.setModuleLoader);
  23. var_dump(typeof PHP.registerExtension);
  24. var_dump(typeof PHP.getExtensions);
  25. var_dump(typeof PHP.setTimeLimit);
  26. var_dump(typeof PHP.setMemoryLimit);
  27. try {
  28. PHP.setTimeLimit(100);
  29. }
  30. catch(e) {
  31. var_dump('caught');
  32. }
  33. EOT;
  34. $v8 = new Foo();
  35. $v8->executeString($JS);
  36. ?>
  37. ===EOF===
  38. --EXPECTF--
  39. string(8) "function"
  40. string(9) "undefined"
  41. string(9) "undefined"
  42. string(9) "undefined"
  43. string(9) "undefined"
  44. string(9) "undefined"
  45. string(9) "undefined"
  46. string(9) "undefined"
  47. string(9) "undefined"
  48. string(9) "undefined"
  49. string(9) "undefined"
  50. string(9) "undefined"
  51. string(6) "caught"
  52. ===EOF===