XMLSQLQuery queried by PHP


XMLSQLQuery queried by PHP

当在堆栈溢出时搜索XMLSQLQuery时,会发现0个结果。所以我真的希望有人能帮忙。

我有一个链接到支持XMLXPathQuery的WSDL文件(我没有使用WSDL文件的经验,以前也从未做过XMLSQLQuery,只有来自标准PHP soapclient的标准SOAP调用)

我还有一个用户名、密码和数据库名称。

理论上,我可以运行一个xmlsqlquery,如下所示:"select lastname from users where statusflag = 1 for xml auto"

但是,我如何(使用用户名、密码和数据库名)连接到这个支持XMLSQLQuery的WSDL文件,以及如何在PHP中运行查询。

好吧,对于其他人来说,WSDL文件似乎有如下主要调用函数:

<s:element name="StringXPathQuery">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="XPathExpression" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="Username" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="DBName" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>

(正确定位,与此处不同)

因此可以在PHP中使用SoapClient。但是这些字段不在WSDL文件中,所以可以猜测或尝试获取一些相关文档。

示例:

$client = new SoapClient("some wsdl url");
$user = $client->StringXPathQuery(array(
    'XPathExpression' => 'user[@lastname="Hans"]',
    'Username' => 'some username',
    'Password' => 'some password',
    'DBName' => 'some db name'
  ));