| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | 
							- <?php
 
- class Foo {
 
- 	var $foo = 'bar';
 
- 	var $true = true;
 
- 	var $false = false;
 
- 	var $bar = array(1,2,3,1.23456789);
 
- 	var $ass = array("life" => 42, "foo" => "bar");
 
- 	function __set($name, $value)
 
- 	{
 
- 		echo "I'm setter!\n";
 
- 		var_dump($name, $value);
 
- 	}
 
- 	function __get($name)
 
- 	{
 
- 		echo "I'm getter!\n";
 
- 		var_dump($name);
 
- 	}
 
- 	function __call($name, $args)
 
- 	{
 
- 		echo "I'm caller!\n";
 
- 		var_dump($name, $args);
 
- 	}
 
- }
 
- $a = new V8Js();
 
- $obj = new Foo;
 
- $a->arr = array("foobar" => $obj);
 
- $JS = <<< 'EOF'
 
-   var example = new Object;
 
-   example.foo = function () {
 
-     print("this is foo");
 
-   }
 
-   example.bar = function () {
 
-     print("this is bar");
 
-   }
 
-   example.__noSuchMethod__ = function (id, args) {
 
-     print("tried to handle unknown method " + id);
 
-     if (args.length != 0)
 
-       print("it had arguments: " + args);
 
-   }
 
-   example.foo();        // alerts "this is foo"
 
-   example.bar();        // alerts "this is bar"
 
-   example.grill();      // alerts "tried to handle unknown method grill"
 
-   example.ding("dong"); // alerts "tried to handle unknown method ding"
 
- EOF;
 
- try {
 
-   $a->executeString("var myarr = new Array(); myarr[0] = 'foo'; myarr[1] = 'bar'; var_dump(myarr); var_dump(new Date('September 8, 1975 09:00:00'))", "call_test1.js");
 
-   $a->executeString("var_dump(PHP.arr.foobar.bar);", "call_test2.js");
 
-   $a->executeString("var_dump(PHP.arr.foobar.bar[0]);", "call_test3.js");
 
-   $a->executeString("var_dump(var_dump(PHP.arr));", "call_test4.js");
 
-   $a->executeString("var patt1=/[^a-h]/g; var_dump(patt1);", "call_test5.js");
 
-   $a->executeString("var_dump(Math.PI, Infinity, null, undefined);", "call_test6.js");
 
- //  $a->executeString($JS);
 
- } catch (V8JsScriptException $e) {
 
-   echo $e->getMessage(), "\n";
 
- }
 
 
  |