function errTest($result_struct) { if (!$result_struct->faultCode()) { $values = $result_struct->value(); $result_array = ui_xmlrpc_decode($values); $valid = $this->checkFaultString($result_array); if ($valid == true) { $r = $result_array; } else { $r = $valid; } } else { $r = $result_struct->faultString(); } return $r; }
function ui_xmlrpc_decode($ui_xmlrpc_val) { $kind = $ui_xmlrpc_val->kindOf(); if ($kind == "scalar") { return $ui_xmlrpc_val->scalarval(); } else { if ($kind == "array") { $size = $ui_xmlrpc_val->arraysize(); $arr = array(); for ($i = 0; $i < $size; $i++) { $arr[] = ui_xmlrpc_decode($ui_xmlrpc_val->arraymem($i)); } return $arr; } else { if ($kind == "struct") { $ui_xmlrpc_val->structreset(); $arr = array(); while (list($key, $value) = $ui_xmlrpc_val->structeach()) { $arr[$key] = ui_xmlrpc_decode($value); } return $arr; } } } }