#php #soap #soapheader
#php #soap #soapheader
Вопрос:
Как я могу создать подобный заголовок soap:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<requestHeader>
<user>
<userId>ID</userId>
<password>Password</password>
</user>
<service>service</service>
</requestHeader>
Комментарии:
1. Я не вижу никакого SOAP в этом примере; это просто обычный XML.
Ответ №1:
Не слишком очевидно, для чего вам нужно это создание, но в целом серия функций PHP DOM:
http://php.net/manual/en/book.dom.php
Позволяет генерировать XML, сохраняя результат в виде строки для дальнейшего использования. Если вы общаетесь через SOAP или хотите создать SOAP-сервер, функции PHP SOAP являются хорошим ресурсом:
Ответ №2:
Я думаю, вы говорите о заголовке клиента, который является обязательным для «входа» на сервер SOAP, поэтому, исходя из этого предположения, это выглядит так, как вы хотите сделать:
<?php
$ns = 'urn:namespace'; // the namespace for the request, you don't appear to have any
// actual header construction, based on your structure
$soapHeader = array('user' => array(
'userId' => $__yourUserID,
'password' => $__yourUserPassword,
),
'service' => $__yourService,
);
// Soap Header initialization
$header = new SOAPHeader($ns, 'requestHeader', $soapHeader);
// add the Header to the Soap Client before request
$soap_client->__setSoapHeaders($header);
?>