私はsoap xmlを持っていますが、インデックスを使用せずに値を取得するのは難題です。soap xmlのキーから値を取得する方法
のxml:
<?xml version="1.0" encoding="UTF-8"?>
<Result xmlns="http://api-v1.gen.mm.vodafone.com/mminterface/result">
<ResultType>0</ResultType>
<ResultCode>0</ResultCode>
<ResultDesc>The service request is processed successfully.</ResultDesc>
<ResultParameters>
<ResultParameter>
<Key>TransactionAmount</Key>
<Value>500</Value>
</ResultParameter>
<ResultParameter>
<Key>TransactionReceipt</Key>
<Value>LIB967VYGF</Value>
</ResultParameter>
</ResultParameters>
<ReferenceData>
<ReferenceItem>
<Key>QueueTimeoutURL</Key>
<Value>https://xx.xx.xx.xx:8080/NotificationService?wsdl</Value>
</ReferenceItem>
</ReferenceData>
</Result>
値を得るために、私は、XMLを解析。
$xml=simplexml_load_string($response) or die("Error: Cannot create object");
次に、オブジェクトから値を取得します。
$ResultType=$xml->ResultType;
$ResultCode=$xml->ResultCode;
$ResultDesc= $xml->ResultDesc;
残りは<ResultParameters>
タグの残りの部分です。
これは、索引とは別の安全な方法で変更することができます。 <ResultParameter>
が交換された場合、これは失敗します。
これは私がそれらを得るために行うものです。
$Amount= $xml->ResultParameters->ResultParameter[0]->Value;
$TransactionReceipt= $xml->ResultParameters->ResultParameter[1]->Value;
誰でもここで秘密を共有してください。