发出soap请求时发生数组到字符串的转换错误


Array to string conversion error when making soap request

我正在做一个类似的简单请求

        $wsdl = "http://.../wsdl/FileArchive";
        $client = new SoapClient($wsdl);

        $parameters= array(
                        "FileName" => "file.jpg"
                       );
        $values = $client->GetFileInfo($parameters);

我得到了"数组到字符串的转换",其中调用了GetFileInfo方法。

该方法在wsdl中定义如下:

<message name="GetFileInfo0Request">
<part name="FileName" type="xs:string"/>
</message>

我已经搜索过了,发现当有一些复杂的类型时可能会发生这种情况,但这里只是一个字符串。可能是什么问题?

而不是此$values = $client->GetFileInfo($parameters);

请尝试以下操作:$values = $client->__soapCall('GetFileInfo', $parameters);

您必须发送一个简单的数组。

 $parameters= array("file.jpg");