1. Go to this page and download the library: Download php-soap/xml library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
php-soap / xml example snippets
use Soap\Xml\Builder\SoapHeaders;
use Soap\Xml\Builder\SoapHeader;
use Soap\Xml\Builder\Header\Actor;
use Soap\Xml\Builder\Header\MustUnderstand;
use Soap\Xml\Manipulator\PrependSoapHeaders;
use VeeWee\Xml\Dom\Document;
use function VeeWee\Xml\Dom\Builder\namespaced_element;
use function VeeWee\Xml\Dom\Builder\element;
use function VeeWee\Xml\Dom\Builder\value;
$doc = Document::fromXmlString($xml);
$builder = new SoapHeaders(
new SoapHeader(
$targetNamespace,
'Auth',
children(
namespaced_element($targetNamespace, 'user', value('josbos')),
namespaced_element($targetNamespace, 'password', value('topsecret'))
),
// Optionally, you can provide additional configurators for setting
// SOAP-ENV specific attributes:
Actor::next(),
new MustUnderstand()
),
$header2,
$header3
);
$headers = $doc->build($builder);
// You can prepend the soap:Header as first element of the soap:envelope
// Like this
$doc->manipulate(new PrependSoapHeaders(...$headers));
use Soap\Xml\Locator\BodyNamespaceLocator;
use VeeWee\Xml\Dom\Document;
$doc = Document::fromXmlString($xml);
$bodyNamespace = $doc->locate(new BodyNamespaceLocator());
use Soap\Xml\Locator\SoapBodyLocator;
use VeeWee\Xml\Dom\Document;
$doc = Document::fromXmlString($xml);
$bodyElement = $doc->locate(new SoapBodyLocator());
use Soap\Xml\Locator\SoapEnvelopeLocator;
use VeeWee\Xml\Dom\Document;
$doc = Document::fromXmlString($xml);
$bodyElement = $doc->locate(new SoapEnvelopeLocator());
use Soap\Xml\Locator\SoapHeaderLocator;
use VeeWee\Xml\Dom\Document;
$doc = Document::fromXmlString($xml);
$bodyElement = $doc->locate(new SoapHeaderLocator());