@santavits

Как вытащить данные с xml ответа с помощью php?

Приходит вот такой ответ
command=bill&bill_id=1&status=paid&error=0&amount=1.00&user=tel%3A%2B79067052439&prv_name=test&ccy=RUB&comment=249
"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" 
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" 
soap:mustUnderstand="1"><ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"Id="SIG-b11c7ec2-1f64-4c79-89ed-6b140e38fc5d">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ec:InclusiveNamespaces xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="soap"/>
</ds:CanonicalizationMethod><ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<ds:Reference URI="#id-66a3cfe1-211c-4752-ba10-3e7e46db3b19">
<ds:Transforms><ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ec:InclusiveNamespaces xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList=""/>
</ds:Transform></ds:Transforms><ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<ds:DigestValue>pd0nJ2QWwllrVNhEAIzgbJ4oyUM=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>PIpmCkqL8Wvlb+fKNmrPaySP+rk6GAOogSah/u1Jw6ZPUrM1PNfwCY5afk1PkvgBs9mf97tqOtoyIEwWF0YhiqpIzjgMSzF09RMGYsAfoDQRdWktmwM2kWk4xLwm8eHXuoqonkXv/skRi3HNo6pZDkJxlqNwX3+HjnFUwFr3KZk=
</ds:SignatureValue>
<ds:KeyInfo Id="KI-7a67103e-fa44-4908-b29b-c107a773cfb3">
<wsse:SecurityTokenReference xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="STR-60e159c8-5294-4c57-b207-151720dedbb1">
<ds:X509Data>
<ds:X509IssuerSerial>
<ds:X509IssuerName>CN=mobw.ru</ds:X509IssuerName>
<ds:X509SerialNumber>1242724091</ds:X509SerialNumber>
</ds:X509IssuerSerial></ds:X509Data></wsse:SecurityTokenReference>
</ds:KeyInfo></ds:Signature></wsse:Security>
</SOAP-ENV:Header>
<soap:Body xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="id-66a3cfe1-211c-4752-ba10-3e7e46db3b19">
<ns2:updateBill xmlns:ns2="http://client.ishop.mw.ru/">
<login>555234</login>
<password>F5263E734AE8BAEDA24D81DE11732DAC</password>
<txn>RTfwbx7vuqaUDLYEuVZ7TFxByCMhFR7HPcFajlHWJC7cSXswih</txn>
<status>60</status>
</ns2:updateBill>
</soap:Body>
</soap:Envelope>


Подскажите как вывести значение amount и comment с первой строки
в значения $amount и $comment
  • Вопрос задан
  • 187 просмотров
Пригласить эксперта
Ответы на вопрос 4
@nektobit
Хак, но зато быстро:
$str = strtok($input, "\n");
parse_str($str, $result);

Подробнее тут:
https://wtools.io/php-sandbox/ft
Ответ написан
Комментировать
Lopar
@Lopar
системный администратор
Ответ написан
Комментировать
IceRD
@IceRD
Работаете с SOAP, у него есть свои методы.
Ответ написан
Комментировать
@krypt3r
SoapClient
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы