Кто-нибудь знает, как получить доступ к массиву [@attributes]
в объекте SimpleXMLElement, возвращаемом SOAP API?
Мне не удается получить значение элемента TotalAmount
массива [@attributes]
.@
- это то место, где я застрял.
Вот конец кода, который возвращает полный ответ:
<code>$response = curl_exec($ch);
$xml = simplexml_load_string($response, 'SimpleXMLElement', LIBXML_NOWARNING);
$xml_response = $xml->children('http://schemas.xmlsoap.org/soap/envelope/')->Body->children();
echo '<pre>';
print_r($xml_response);
echo '
';
Пытаясь получить значение TotalAmount
, я захожу здесь в тупик:
$postage = $xml_response->CalculatePostageRateResponse->PostageRateResponse->PostagePrice->Postage
Это извлекает часть данных, которую я хочу, но не могувыяснить, как получить доступ к массиву [@attributes]
.
SimpleXMLElement Object
(
[@attributes] => Array
(
[TotalAmount] => 8.15
)
[MailService] => Priority Mail
[Zone] => 5
[IntraBMC] => false
[Pricing] => CommercialBase
)
Буду очень признателен за любую помощь.
Вот весь $ xml_response:
SimpleXMLElement Object
(
[CalculatePostageRateResponse] => SimpleXMLElement Object
(
[PostageRateResponse] => SimpleXMLElement Object
(
[Status] => 0
[Zone] => 5
[PostagePrice] => SimpleXMLElement Object
(
[@attributes] => Array
(
[TotalAmount] => 8.15
)
[MailClass] => Priority
[Postage] => SimpleXMLElement Object
(
[@attributes] => Array
(
[TotalAmount] => 8.15
)
[MailService] => Priority Mail
[Zone] => 5
[IntraBMC] => false
[Pricing] => CommercialBase
)
[Fees] => SimpleXMLElement Object
(
[@attributes] => Array
(
[TotalAmount] => 0
)
[CertificateOfMailing] => 0
[CertifiedMail] => 0
[CollectOnDelivery] => 0
[DeliveryConfirmation] => 0
[ElectronicReturnReceipt] => 0
[InsuredMail] => 0
[RegisteredMail] => 0
[RestrictedDelivery] => 0
[ReturnReceipt] => 0
[ReturnReceiptForMerchandise] => 0
[SignatureConfirmation] => 0
[SpecialHandling] => 0
[MerchandiseReturn] => 0
[OpenAndDistribute] => 0
[AdultSignature] => 0
[AdultSignatureRestrictedDelivery] => 0
[LiveAnimalSurcharge] => 0
[FragileHandling] => 0
[AMDelivery] => 0
[GroupedExtraServices] => SimpleXMLElement Object
(
[@attributes] => Array
(
[Services] =>
)
[FeeAmount] => 0
)
)
[DeliveryTimeDays] => 2
[EstimatedDeliveryDate] => 6/1/2018
[DdpRate] => 0
)
)
)
)