You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP cURL调用SOAP XML接口返回无元素名纯值字符串问题求助

解决方案

  1. 先检查页面源代码
    你看到的无标签长字符串大概率是浏览器渲染导致的,浏览器默认会把未声明格式的XML标签当作无效HTML标签直接忽略,只展示标签内的文本。你可以右键点击页面选择「查看网页源代码」,就能看到完整的XML响应结构。

  2. 新增响应格式声明
    如果你需要在浏览器中直接可视化查看XML结构,在输出响应前加一行Content-Type声明即可:

// 在echo $response; 前添加
header('Content-Type: text/xml; charset=utf-8');
echo $response;
  1. 补充Accept请求头
    Postman发送请求时会自动携带合理的Accept头,你导出的代码中缺少明确的返回格式声明,可能导致部分服务端返回非XML格式的响应。你可以在CURLOPT_HTTPHEADER配置中新增Accept字段:
CURLOPT_HTTPHEADER => array(
  'Content-Type: text/xml; charset=utf-8',
  'SOAPAction: urn:getNameOptions',
  'Accept: text/xml, application/xml' // 新增这行
),
  1. 解析XML内容
    如果你需要后续处理响应中的字段,可以用PHP内置的SimpleXML扩展直接解析响应字符串:
$response = curl_exec($curl);
curl_close($curl);
// 解析XML为对象
$xml = simplexml_load_string($response);
// 打印解析后的结构查看字段
print_r($xml);

内容的提问来源于stack exchange,提问作者Santosh Pillai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 02:24:00