如何更改默认肥皂 header?

How to change the default soap header?

我正在使用此代码设置 header。

$root = new \SimpleXMLElement('<S:Header/>');

我收到这个错误。

SimpleXMLElement::__construct():命名空间错误:未定义 Header 上的命名空间前缀 S。

有人知道如何解决这个问题吗? :/ 提前致谢:)

您需要为前缀 S 定义命名空间。

$root = new SimpleXMLElement('<S:Header></S:Header>', LIBXML_NOERROR, false, 'S', true);
//add namespace attribute into root element
$root->addAttribute('xmlns:xmlns:S','mynamespace');

print_r($root->asXML());