Php 如何将XML发送到SOAP Web服务?

Php 如何将XML发送到SOAP Web服务?,php,xml,soap,service,web,Php,Xml,Soap,Service,Web,我使用soapui来测试我的实现,它在那里工作。然而,在php环境中,如果没有SOAP UI,我不知道如何做到这一点 我目前有php代码从MySQL数据库中提取数据并输出格式良好的XML,但我不知道如何将此XML输出发送到web服务进行处理 任何帮助都会很好 谢谢您不必创建自己的SOAP XML。有一个非常好的SOAP扩展可用,您可以在其中使用服务WSDL文件创建SOAP客户机 如果只是发送数据,请使用 配置示例:跳过WSDL是一种不好的做法吗?我已经有了创建XML的代码,它可以通过SOAP

我使用soapui来测试我的实现,它在那里工作。然而,在php环境中,如果没有SOAP UI,我不知道如何做到这一点

我目前有php代码从MySQL数据库中提取数据并输出格式良好的XML,但我不知道如何将此XML输出发送到web服务进行处理

任何帮助都会很好


谢谢

您不必创建自己的SOAP XML。有一个非常好的SOAP扩展可用,您可以在其中使用服务WSDL文件创建SOAP客户机

如果只是发送数据,请使用


配置示例:

跳过WSDL是一种不好的做法吗?我已经有了创建XML的代码,它可以通过SOAP UI完美地工作。另一方面,我会使用类似$xml=newsoapvar($xml\u string,XSD\u ANYXML)的东西吗;如果$xml\u字符串是我输出的xml代码,我认为这并不坏。当服务发生变化(新方法、新参数等)时,您只需调整代码。当使用wsdl时,您只需要使用新功能,而实际上不必更改xml来生成。如果只是发送数据,请使用。配置示例:Curl看起来很有趣。CURLOPT_POSTFIELDS是介于安全标头之间和之外的所有内容,安全标头位于CURLOPT_HTTPHEADER?CURLOPT_POSTFIELDS中,通常包含HTTP请求主体。完整的xml(可能包括)。如果需要,CURLOPT_HHTPHEADER包括额外的http协议头(如内容类型)。我不知道你必须发送哪些标题,所以我不能告诉你它们属于哪里。好的,谢谢。我将很快尝试它,并让您知道它是如何运行的。如果您想直接发送Soap信封XML,您可以只发送一个cURL post请求,并将原始post数据设置为XML。