PHP 5.6.18 is available

The SoapHeader class

(PHP 5 >= 5.0.1, PHP 7)


Represents a SOAP header.

Class synopsis

SoapHeader {
/* Methods */
__construct ( string $namespace , string $name [, mixed $data [, bool $mustunderstand [, string $actor ]]] )
SoapHeader ( string $namespace , string $name [, mixed $data [, bool $mustunderstand = false [, string $actor ]]] )

Table of Contents

add a note add a note

User Contributed Notes 2 notes

john at jtresponse dot co dot uk
3 years ago
None of the examples really do it for me.
Note: you should NOT need to hard-code any XML.

Here is an example of creating a nested header and including a parameter.

$client = new SoapClient(WSDL,array());

$auth = array(
        'SystemId'=> array('_'=>'DATA','Param'=>'PARAM'),
  $header = new SoapHeader('NAMESPACE','Auth',$auth,false);

Gives the following header XML:

      <ns1:SystemId Param="PARAM">DATA</ns1:SystemId>
voroks at logics dot net dot au
7 months ago
Example by john at jtresponse dot co dot uk does miss one important point: to be able to add attributes they must be mentioned in WSDL. If they not exist in WSDL they WILL NOT appear as attributes but rather <item><key/><value/></item> elements.
To Top