douyin2883 2013-11-08 18:48 采纳率: 0%
浏览 30

将字符串作为XML发送

I have to send a string formatted as XML to a web service as an XML document. What is the best way to turn my string

 $input_xml = "
<WEB>
<header>
<WebSiteID>WGI</WebSiteID>
<WebDocNumber>Doc10</WebDocNumber>
<OrderCaptureDateTime>10/07/2013</OrderCaptureDateTime>
</header>
<item>
<ItemNumber>FG-00087</ItemNumber>
<ReplacementItem></ReplacementItem>
<Quantity>2</Quantity>
<UnitPrice>6.31</UnitPrice>
<SalesTaxCode></SalesTaxCode>
<SalesTaxAmt>0</SalesTaxAmt>
</item>
</WEB>";

I was using $xmlget = simplexml_load_string($input_xml); and just sending $xmlget to the SOAP application.

$requestParams = array(
    'XMLDocNumber' => 'Test_Doc',
    'InboundXML' =>  $xmlget,
    'sStatus' =>''
);

The receiver of the data is say the XML is not in the "Correct Format" I am not sure which end the issue is stemming from but I thought i would ask for help.

EDIT

Based on the answers I got below I am now just sending the string of XML data. But now I am getting the following error from the SOAP application

stdClass Object ( [InboundApprovedXMLResult] => [sStatus] => Invalid XML Header Format;

I even added the XML header to my string so now it begins with this: <?xml version="1.0" encoding="UTF-8"?> still getting the same error.

  • 写回答

2条回答 默认 最新

  • dtwr2012 2013-11-08 18:50
    关注

    I don't know your service description (WSDL) but I guess it should be:

    $requestParams = array(
        'XMLDocNumber' => 'Test_Doc',
        'InboundXML' =>  $input_xml,
        'sStatus' =>''
    );
    

    Passing a simple_xml_element makes no sense for me.

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。