如何显示PHP XML-RPC调用的返回值?

如何显示PHP XML-RPC调用的返回值?,php,xml-rpc,Php,Xml Rpc,我似乎找不到任何代码来显示调用返回的值 我正在以下链接运行软件供应商提供的xml库 newxmlrpcval('14719','string'),'struct'); $msg=新的xmlrpcmsg(“列表帐户”); /*在此处替换URL和凭据以访问API*/ $cli=新的xmlrpc_客户端($cli)https://DOMAINHERE/xmlapi/xmlapi'); $cli->setSSLVerifyPeer(false); $cli->setSSLVerifyHost(fals

我似乎找不到任何代码来显示调用返回的值

我正在以下链接运行软件供应商提供的xml库

newxmlrpcval('14719','string'),'struct');
$msg=新的xmlrpcmsg(“列表帐户”);
/*在此处替换URL和凭据以访问API*/
$cli=新的xmlrpc_客户端($cli)https://DOMAINHERE/xmlapi/xmlapi');
$cli->setSSLVerifyPeer(false);
$cli->setSSLVerifyHost(false);
$cli->setCredentials('USERNAME','PASSWORD',CURLAUTH_DIGEST);
$r=$cli->send($msg,20);
如果($r->faultCode()){
错误日志(“Fault.Code:.$r->faultCode()”,原因:.$r->faultString());
打印($r->faultString());
返回false;
}
其他的
{
返回$r->value();
//这里我需要一些东西来将返回值写入普通PHP变量
}
}

好的,多亏了哈弗的评论

我设法解决了这个问题,并在库中的代码中找到了一个实现这个技巧的函数

非常感谢你的指点,真的很有帮助

我不熟悉php和xml,学习曲线很高,但谢谢

供其他人参考,也许将来这里是最后两行的正确代码,对我来说很神奇

<?php
include 'xmlrpc/xmlrpc.inc';


        // $params = array(new xmlrpcval(array("offset"=> new xmlrpcval("1", "int")
        //                                ,"i_customer"=> new xmlrpcval("321", "int")
        //                                 ), 'struct'));

       $params = array(new xmlrpcval(array("i_customer"=> new xmlrpcval("321", "int")

                                           ), 'struct'));

       $msg = new xmlrpcmsg('listAccounts', $params);

       /* replace here URL  and credentials to access to the API */
       $cli = new xmlrpc_client('DOMAIN');
       $cli->setSSLVerifyPeer(false);
       $cli->setdebug(0);
       $r = $cli->send($msg, 20);       /* 20 seconds timeout */

       if ($r->faultCode()) {
         error_log("Fault. Code: " . $r->faultCode() . ", Reason: " . $r->faultString());
         echo $r->faultString();
       }

       // now lets decode the xml response..
        $values=php_xmlrpc_decode($r->value());
        var_dump ($values['accounts'][0][username]);

?>
newxmlrpcval(“1”,“int”)
//,“i_客户”=>新的xmlrpcval(“321”,“int”)
//)、‘结构’);
$params=array(新的xmlrpcval(数组(“i_客户”=>新的xmlrpcval(“321”,“int”)
)","struct"),;
$msg=新的xmlrpcmsg('listAccounts',$params);
/*在此处替换URL和凭据以访问API*/
$cli=新的xmlrpc_客户端(“域”);
$cli->setSSLVerifyPeer(false);
$cli->setdebug(0);
$r=$cli->send($msg,20);/*20秒超时*/
如果($r->faultCode()){
错误日志(“Fault.Code:.$r->faultCode()”,原因:.$r->faultString());
echo$r->faultString();
}
//现在让我们解码xml响应。。
$values=php_xmlrpc_decode($r->value());
var_dump($values['accounts'][0][username]);
?>

你被否决的原因有两个——一是你在大喊大叫,二是你的问题中没有实际问题。我的道歉。。已编辑的POST我希望XML-RPC调用的值位于
$r->value()
中。文档应该告诉您这是什么类型-字符串?一个物体?您可以执行
echo gettype($r->value());退出()在返回之前暂时查看它是什么类型。您好。。感谢您的回复,当我使用您的代码时,它会返回object。。
<?php
include 'xmlrpc/xmlrpc.inc';


        // $params = array(new xmlrpcval(array("offset"=> new xmlrpcval("1", "int")
        //                                ,"i_customer"=> new xmlrpcval("321", "int")
        //                                 ), 'struct'));

       $params = array(new xmlrpcval(array("i_customer"=> new xmlrpcval("321", "int")

                                           ), 'struct'));

       $msg = new xmlrpcmsg('listAccounts', $params);

       /* replace here URL  and credentials to access to the API */
       $cli = new xmlrpc_client('DOMAIN');
       $cli->setSSLVerifyPeer(false);
       $cli->setdebug(0);
       $r = $cli->send($msg, 20);       /* 20 seconds timeout */

       if ($r->faultCode()) {
         error_log("Fault. Code: " . $r->faultCode() . ", Reason: " . $r->faultString());
         echo $r->faultString();
       }

       // now lets decode the xml response..
        $values=php_xmlrpc_decode($r->value());
        var_dump ($values['accounts'][0][username]);

?>