SimpleXMLElement к переменным PHP

#php #xml

#php #xml

Вопрос:

Я пытался получить Amount из LandedPrice области этого XML, который был возвращен. Я пробовал этот и другой код, который выглядит похожим. Есть ли у кого-нибудь какие-либо предложения о том, как я мог бы извлечь эту информацию из этого?

 $simplexml = new SimpleXMLElement($response); // Is response from server.
$amount = (string) $simplexml->CompetitivePrice[0]->LandedPrice->Price->Amount;


SimpleXMLElement Object 
( [GetCompetitivePricingForASINResult] => SimpleXMLElement Object 
    ( [@attributes] => Array ( [ASIN] => B00H9M9B34 [status] => Success ) [Product] => SimpleXMLElement Object 
        ( [Identifiers] => SimpleXMLElement Object 
            ( [MarketplaceASIN] => SimpleXMLElement Object 
                ( [MarketplaceId] => ATVPDKIKX0DER [ASIN] => B00H9M9B34 ) 
            ) [CompetitivePricing] => SimpleXMLElement Object 
            ( [CompetitivePrices] => SimpleXMLElement Object 
            ( [CompetitivePrice] => SimpleXMLElement Object 
                ( [@attributes] => Array ( [belongsToRequester] => false [condition] => New [subcondition] => New ) [CompetitivePriceId] => 1 [Price] => SimpleXMLElement Object 
                ( [LandedPrice] => SimpleXMLElement Object 
                    ( [CurrencyCode] => USD [Amount] => 75.00 ) [ListingPrice] => SimpleXMLElement Object 
                    ( [CurrencyCode] => USD [Amount] => 75.00 ) [Shipping] => SimpleXMLElement Object 
                    ( [CurrencyCode] => USD [Amount] => 0.00 ) 
                ) 
                ) 
            ) [NumberOfOfferListings] => SimpleXMLElement Object 
                ( [OfferListingCount] => Array ( [0] => 1 [1] => 1 ) ) 
            ) [SalesRankings] => SimpleXMLElement Object 
            ( [SalesRank] => SimpleXMLElement Object 
                ( [ProductCategoryId] => sports_display_on_website [Rank] => 625877 ) 
            ) 
        ) 
    )
    [ResponseMetadata] => SimpleXMLElement Object 
    ( [RequestId] => 234234343d-bawff3f3-vef5555rrer) 
)
 

Комментарии:

1. Как выглядит XML-файл?

2. Показать содержимое $response переменной ( echo $response )

3. Он возвращается из API Amazon с использованием curl, когда я делаю print_r($simplexml); Это то, что он мне дает.

4. Когда я повторяю $response, он показывает следующее: ATVPDKIKX0DERB001539BCE1USD171.99USD171.99USD0.002USD136.22USD136.22USD0.00171115automotive_display_on_website17012wireless_display_on_website3117524077620116021c4e9ba-2899-fw4w-4rw4r-f05a888a262d

5. С помощью SimpleXML крайне важно, чтобы вы выводили XML для себя, а затем работали с ним, как описано в примерах использования SimpleXML Basic . Для более конкретных вещей у нас уже есть множество хороших примеров в вопросах и ответах.