timezones.phpt 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. --TEST--
  2. Test V8::executeString() : Check timezone handling
  3. --SKIPIF--
  4. <?php
  5. if(strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
  6. die('SKIP TZ not handled by v8 on Windows');
  7. }
  8. require_once(dirname(__FILE__) . '/skipif.inc');
  9. ?>
  10. --FILE--
  11. <?php
  12. putenv('LC_ALL=C');
  13. $v8 = new V8Js();
  14. try {
  15. putenv('TZ=Europe/Helsinki');
  16. $v8->executeString('print (new Date("Thu, 20 Mar 2014 09:03:24 +0000")).toString();');
  17. echo "\n";
  18. } catch (V8JsScriptException $e) {
  19. var_dump($e->getMessage());
  20. }
  21. try {
  22. putenv('TZ=America/New_York');
  23. $v8->executeString('print (new Date("Thu, 20 Mar 2014 09:03:24 +0000")).toString();');
  24. echo "\n";
  25. } catch (V8JsScriptException $e) {
  26. var_dump($e->getMessage());
  27. }
  28. try {
  29. putenv('TZ=Europe/Helsinki');
  30. $v8->executeString('print (new Date("Thu, 20 Mar 2014 09:03:24 +0000")).toString();');
  31. echo "\n";
  32. } catch (V8JsScriptException $e) {
  33. var_dump($e->getMessage());
  34. }
  35. ?>
  36. ===EOF===
  37. --EXPECT--
  38. Thu Mar 20 2014 11:03:24 GMT+0200 (Eastern European Standard Time)
  39. Thu Mar 20 2014 05:03:24 GMT-0400 (Eastern Daylight Time)
  40. Thu Mar 20 2014 11:03:24 GMT+0200 (Eastern European Standard Time)
  41. ===EOF===