首页 > 解决方案 > 如何在 PHP Curl 或 PHP Soapclient 中进行 XML 请求?

问题描述

我正在处理 PHP 中的 XML 请求。我们可以使用 PHP CURL 或 PHP SoapClient 发出请求吗?以下是一个示例 SOAP 1.2:

POST /max/member.asmx HTTP/1.1
Host: api.relateddigital.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <SendOngoingEMail xmlns="http://ws.euromsg.com/member">
      <ServiceTicket>string</ServiceTicket>
      <Key>string</Key>
      <Value>string</Value>
      <DemograficData>
        <EmKeyValue>
          <Key>string</Key>
          <Value>string</Value>
        </EmKeyValue>
        <EmKeyValue>
          <Key>string</Key>
          <Value>string</Value>
        </EmKeyValue>
      </DemograficData>
      <ForceUpdate>boolean</ForceUpdate>
      <OngoingCampaignId>string</OngoingCampaignId>
    </SendOngoingEMail>
  </soap12:Body>
</soap12:Envelope>

标签: phpcurlsoapsoap-clientphp-curl

解决方案


使用 WSDL,您可以使用原生 PHP SoapClient类。您必须传递 PHP 数组或结构良好的对象。

我强烈建议您使用 WSDL 到 PHP 生成器。这样,您将使用基于 WSDL 的合适 PHP SDK 以使用完全 OOP 方法。此外,您不会想知道如何构造请求。最后,由于生成的类,响应处理将得到缓解。

试试PackageGenerator项目。


推荐阅读