首页 > 解决方案 > 将我的 XML 输出从 Amazon API 转换为 HTML

问题描述

我正在使用 PHP(没有任何框架或插件)和 AMAZON API,我尝试

1-生成签名 URL

使用签名的 url 对某些关键字进行 2-query amazon

3-获取 XML 格式的响应(以下示例为 1 项)

4-将我的 XML 输出转换为 HTML 格式以显示产品:图片、ItemAttributes 和价格

我已经能够完成第 3 步,但无法完成解析 XML 和显示数据的第 4 步。我想显示如下数据: 想要显示的示例

感谢您的建议

编辑:我已经阅读了这个答案How do you parse and process HTML/XML in PHP? ,但我找不到有效的解决方案。如果有人可以给我一点帮助,那就太好了。

<Item>
<ASIN>B01FADCQHG</ASIN>
<DetailPageURL>
https://www.amazon.fr/Douchette-Compatible-Ordinateur-Portable-NT-2012/dp/B01FADCQHG?SubscriptionId=XXXXXXXXXXXXXXXXQ&tag=YYYYYYYYYYY&linkCode=xm2&camp=2025&creative=165953&creativeASIN=B01FADCQHG
</DetailPageURL>
<ItemLinks>
<ItemLink>
<Description>Add To Wishlist</Description>
<URL>
https://www.amazon.fr/gp/registry/wishlist/add-item.html?asin.0=B01FADCQHG&SubscriptionId=XXXXXXXXXXXXXXXXQ&tag=YYYYYYYYYYY&linkCode=xm2&camp=2025&creative=12742&creativeASIN=B01FADCQHG
</URL>
</ItemLink>
<ItemLink>
<Description>Tell A Friend</Description>
<URL>
https://www.amazon.fr/gp/pdp/taf/B01FADCQHG?SubscriptionId=XXXXXXXXXXXXXXXXQ&tag=YYYYYYYYYYY&linkCode=xm2&camp=2025&creative=12742&creativeASIN=B01FADCQHG
</URL>
</ItemLink>
<ItemLink>
<Description>All Customer Reviews</Description>
<URL>
https://www.amazon.fr/review/product/B01FADCQHG?SubscriptionId=XXXXXXXXXXXXXXXXQ&tag=YYYYYYYYYYY&linkCode=xm2&camp=2025&creative=12742&creativeASIN=B01FADCQHG
</URL>
</ItemLink>
<ItemLink>
<Description>All Offers</Description>
<URL>
https://www.amazon.fr/gp/offer-listing/B01FADCQHG?SubscriptionId=XXXXXXXXXXXXXXXXQ&tag=YYYYYYYYYYY&linkCode=xm2&camp=2025&creative=12742&creativeASIN=B01FADCQHG
</URL>
</ItemLink>
</ItemLinks>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
<ImageSets>
<ImageSet Category="swatch">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41vpXUBtbDL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41vpXUBtbDL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41vpXUBtbDL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41vpXUBtbDL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41vpXUBtbDL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41vpXUBtbDL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51WMuI%2Bz1UL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51WMuI%2Bz1UL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51WMuI%2Bz1UL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51WMuI%2Bz1UL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51WMuI%2Bz1UL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51WMuI%2Bz1UL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41aB6v1h%2BnL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41aB6v1h%2BnL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41aB6v1h%2BnL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41aB6v1h%2BnL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41aB6v1h%2BnL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41aB6v1h%2BnL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/31OM5Jgx4OL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/31OM5Jgx4OL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/31OM5Jgx4OL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/31OM5Jgx4OL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/31OM5Jgx4OL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/31OM5Jgx4OL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41ARM97S4aL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41ARM97S4aL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41ARM97S4aL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41ARM97S4aL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41ARM97S4aL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41ARM97S4aL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51uDfEktHpL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51uDfEktHpL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51uDfEktHpL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51uDfEktHpL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51uDfEktHpL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/51uDfEktHpL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41Q34RCcMjL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41Q34RCcMjL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41Q34RCcMjL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41Q34RCcMjL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41Q34RCcMjL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41Q34RCcMjL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="variant">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41SeG%2B17zhL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41SeG%2B17zhL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41SeG%2B17zhL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41SeG%2B17zhL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41SeG%2B17zhL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41SeG%2B17zhL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
<ImageSet Category="primary">
<SwatchImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL30_.jpg
</URL>
<Height Units="pixels">30</Height>
<Width Units="pixels">30</Width>
</SwatchImage>
<SmallImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</SmallImage>
<ThumbnailImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL75_.jpg
</URL>
<Height Units="pixels">75</Height>
<Width Units="pixels">75</Width>
</ThumbnailImage>
<TinyImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL110_.jpg
</URL>
<Height Units="pixels">110</Height>
<Width Units="pixels">110</Width>
</TinyImage>
<MediumImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL._SL160_.jpg
</URL>
<Height Units="pixels">160</Height>
<Width Units="pixels">160</Width>
</MediumImage>
<LargeImage>
<URL>
https://images-eu.ssl-images-amazon.com/images/I/41BCem4B6CL.jpg
</URL>
<Height Units="pixels">500</Height>
<Width Units="pixels">500</Width>
</LargeImage>
</ImageSet>
</ImageSets>
<ItemAttributes>
<Binding>Personal Computers</Binding>
<Brand>Netum Electronic</Brand>
<Color>Black</Color>
<EAN>0607885671419</EAN>
<EANList>
<EANListElement>0607885671419</EANListElement>
</EANList>
<Feature>
Plug and Play, connecté à votre ordinateur ou votre caisse enregistreuse simplement via un port USB
</Feature>
<Feature>
Facile à installer, conception ergonomique et robuste
</Feature>
<Feature>
Haute résolution avec 4 mil pour même les plus petits codes à barres, cible avec précision même à une certaine distance
</Feature>
<Feature>
Vitesse de Scanning: 120 Lignes Par Secondes; Profondeur de Scanning: 0-45cm; Mode de Scanning: Manuel et Automatique
</Feature>
<Feature>
Possibilité de Décoder : UPC/EAN, UPC/EAN with Supplementals, Code 128, UCC/EAN 128, Code 39, Code 39 Full ASCII, Trioptic Code 39, Code 128, Code 128 Full ASCII, Codabar, Interleaved 2 of 5, Code 93, MSI, Code 11, ISBN, ISSN, China Post Code, etc.
</Feature>
<ItemDimensions>
<Height Units="hundredths-inches">256</Height>
<Length Units="hundredths-inches">669</Length>
<Weight Units="Centièmes de livre">55</Weight>
<Width Units="hundredths-inches">335</Width>
</ItemDimensions>
<Label>NETUM</Label>
<ListPrice>
<Amount>2799</Amount>
<CurrencyCode>EUR</CurrencyCode>
<FormattedPrice>EUR 27,99</FormattedPrice>
</ListPrice>
<Manufacturer>NETUM</Manufacturer>
<Model>NT-2012</Model>
<MPN>NT-2012</MPN>
<NumberOfItems>4</NumberOfItems>
<PackageDimensions>
<Height Units="hundredths-inches">340</Height>
<Length Units="hundredths-inches">720</Length>
<Weight Units="Centièmes de livre">62</Weight>
<Width Units="hundredths-inches">480</Width>
</PackageDimensions>
<PackageQuantity>1</PackageQuantity>
<PartNumber>NT-2012</PartNumber>
<ProductGroup>CE</ProductGroup>
<ProductTypeName>MONITOR</ProductTypeName>
<Publisher>NETUM</Publisher>
<Studio>NETUM</Studio>
<Title>
Lecteur Code Barre NETUM Laser Scanner Douchette Code Barre USB Compatible avec PC/Ordinateur Portable, Windows XP / 7/8 etc. NT-2012
</Title>
<UPC>607885671419</UPC>
<UPCList>
<UPCListElement>607885671419</UPCListElement>
</UPCList>
</ItemAttributes>
<OfferSummary>
<LowestNewPrice>
<Amount>1799</Amount>
<CurrencyCode>EUR</CurrencyCode>
<FormattedPrice>EUR 17,99</FormattedPrice>
</LowestNewPrice>
<TotalNew>1</TotalNew>
<TotalUsed>0</TotalUsed>
<TotalCollectible>0</TotalCollectible>
<TotalRefurbished>0</TotalRefurbished>
</OfferSummary>
<Offers>
<TotalOffers>1</TotalOffers>
<TotalOfferPages>1</TotalOfferPages>
<MoreOffersUrl>
https://www.amazon.fr/gp/offer-listing/B01FADCQHG?SubscriptionId=XXXXXXXXXXXXXXXXQ&tag=YYYYYYYYYYY&linkCode=xm2&camp=2025&creative=12742&creativeASIN=B01FADCQHG
</MoreOffersUrl>
<Offer>
<OfferAttributes>
<Condition>New</Condition>
</OfferAttributes>
<OfferListing>
<OfferListingId>
t1EaE3BjmKKaXlRO6%2BrE4Jr8yA0Sp4uF%2B6YJY0oBrbCqSjq%2FRafpmq54MEjjCy55UQ9N13CK6pPnIXspnxtrbd2qhHVGKQ6RUQ4hYZ1dRl5Yu9OWu0ODk%2FUg6Ogu5gPJTgRWUPRPQ0ipuaRx%2FWGnNU7c8c4awrrU
</OfferListingId>
<Price>
<Amount>2799</Amount>
<CurrencyCode>EUR</CurrencyCode>
<FormattedPrice>EUR 27,99</FormattedPrice>
</Price>
<SalePrice>
<Amount>1799</Amount>
<CurrencyCode>EUR</CurrencyCode>
<FormattedPrice>EUR 17,99</FormattedPrice>
</SalePrice>
<AmountSaved>
<Amount>1000</Amount>
<CurrencyCode>EUR</CurrencyCode>
<FormattedPrice>EUR 10,00</FormattedPrice>
</AmountSaved>
<PercentageSaved>36</PercentageSaved>
<Availability>Habituellement expédié sous 24 h</Availability>
<AvailabilityAttributes>
<AvailabilityType>now</AvailabilityType>
<MinimumHours>0</MinimumHours>
<MaximumHours>0</MaximumHours>
</AvailabilityAttributes>
<IsEligibleForSuperSaverShipping>1</IsEligibleForSuperSaverShipping>
<IsEligibleForPrime>1</IsEligibleForPrime>
</OfferListing>
</Offer>
</Offers>
<CustomerReviews>
<IFrameURL>
https://www.amazon.fr/reviews/iframe?akid=XXXXXXXXXXXXXXXXQ&alinkCode=xm2&asin=B01FADCQHG&atag=YYYYYYYYYYY&exp=2018-11-06T18%3A12%3A08Z&v=2&sig=hYS9I3D7ShIrGKfQhbkiifr%252BhBHUG0QHWWj1VgZGwaI%253D
</IFrameURL>
<HasReviews>true</HasReviews>
</CustomerReviews>
</Item>
<Item>

标签: phphtmlxmlapiamazon

解决方案


int xml_parse_into_struct ( resource $parser , string $data , array &$values [, array &$index ] )

http://php.net/manual/en/function.xml-parse-into-struct.php


推荐阅读