Implement interface ArrayAccess in the Value class
[plcapi.git] / debugger / action.php
index 5427f67..3b01444 100644 (file)
@@ -287,8 +287,9 @@ if ($action) {
                         $max = $v->count();
                         echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
                         echo "<thead>\n<tr><th>Method ($max)</th><th>Description</th></tr>\n</thead>\n<tbody>\n";
-                        for ($i = 0; $i < $max; $i++) {
-                            $rec = $v->arraymem($i);
+                        //for ($i = 0; $i < $max; $i++) {
+                        foreach($v as $i => $rec) {
+                            //$rec = $v->arraymem($i);
                             if ($i % 2) {
                                 $class = ' class="oddrow"';
                             } else {
@@ -354,7 +355,8 @@ if ($action) {
                     if ($r2->kindOf() != "array") {
                         echo "<tr><td class=\"oddrow\">Signature</td><td class=\"oddrow\">Unknown</td><td class=\"oddrow\">&nbsp;</td></tr>\n";
                     } else {
-                        for ($i = 0; $i < $r2->arraysize(); $i++) {
+                        //for ($i = 0; $i < $r2->arraysize(); $i++) {
+                        foreach($r2 as $i => $x) {
                             $payload = "";
                             $alt_payload = "";
                             if ($i + 1 % 2) {
@@ -363,13 +365,16 @@ if ($action) {
                                 $class = ' class="evenrow"';
                             }
                             echo "<tr><td$class>Signature&nbsp;" . ($i + 1) . "</td><td$class>";
-                            $x = $r2->arraymem($i);
+                            //$x = $r2->arraymem($i);
                             if ($x->kindOf() == "array") {
-                                $ret = $x->arraymem(0);
+                                //$ret = $x->arraymem(0);
+                                $ret = $x[0];
                                 echo "<code>OUT:&nbsp;" . htmlspecialchars($ret->scalarval(), ENT_COMPAT, \PhpXmlRpc\PhpXmlRpc::$xmlrpc_internalencoding) . "<br />IN: (";
                                 if ($x->count() > 1) {
-                                    for ($k = 1; $k < $x->arraysize(); $k++) {
-                                        $y = $x->arraymem($k);
+                                    foreach($x as $k => $y) {
+                                        if ($k == 0) continue;
+                                    //for ($k = 1; $k < $x->arraysize(); $k++) {
+                                        //$y = $x->arraymem($k);
                                         echo htmlspecialchars($y->scalarval(), ENT_COMPAT, \PhpXmlRpc\PhpXmlRpc::$xmlrpc_internalencoding);
                                         if ($wstype != 1) {
                                             $type = $y->scalarval();