Zend_Service_Amazon Inleiding Zend_Service_Amazon is een eenvoudige API om Amazon webservices te gebruiken. Zend_Service_Amazon heeft twee APIs: een meer traditionele die Amazons eigen API volgt, en een eenvoudigere "Query API" om nog meer complexe zoekqueries gemakkelijk op te bouwen. Zend_Service_Amazon staat ontwikkelaars toe om informatie die door Amazon.com web sites worden verstrekt direct op te vragen via de Amazon Web Services API. Voorbeelden: Item informatie opvragen, zoals beelden, beschrijvingen, prijzen, en meer Klant- en uitgeversrecensies Gelijksoortige producten en accessoires Amazon.com aanbiedingen ListMania lijsten Om Zend_Service_Amazon te gebruiken dien je een Amazon developer API key moeten hebben. Om die te verkrijgen, en voor meer informatie, kan je terecht op de Amazon Web Services website. Je Amazon developer API key is aan je Amazon identiteit verbonden, neem dus de nodige maatregelen om je key te beveiligen en privé te houden. Amazon doorzoeken met de traditionele API In dit voorbeeld zoeken we naar PHP boeken op Amazon en doorlopen we de resultaten door ze uit te printen. itemSearch(array('SearchIndex' => 'Books', 'Keywords' => 'php')); foreach ($response as $r) { echo $r->Title .'
'; } ?>]]>
Amazon doorzoeken met de Query API Hier zoeken we ook naar PHP boeken op Amazon, maar we gebruiken de Query API, die lijkt op het Fluent Interface ontwerp patroon. category('Books')->Keywords('PHP'); $results = $query->search(); foreach ($results as $result) { echo $result->Title .'
'; } ?>]]>
Landcodes Standaard maakt Zend_Service_Amazon een verbinding met de Amazon web service in de Verenigde Staten ("US"). Om verbinding te maken met een ander land geef je eenvoudigweg de landcode van dit land op als de tweede parameter van de constructor: Een Amazon Web Service land kiezen ]]> Geldige landcodes zijn: CA, DE, FR, JP, UK, en US. Een specifiek item opzoeken met ASIN code De itemLookup() methode biedt de mogelijkheid om een specifiek Amazon item op te halen als de ASIN bekend is. Een specifiek Amazon item ophalen per ASIN itemLookup('B0000A432X'); ?>]]> De itemLookup() methode aanvaardt ook een optionele tweede parameter om zoekopties af te handelen. Voor alle details, inclusief een lijst van beschikbare opties, zie de relevante Amazon documentatie. Om informatie over de beelden te verkrijgen voor je zoekresultaten, moet je de optie ResponseGroup tot Medium of Large zetten. Amazon Item zoekopdrachten uitvoeren Het zoeken naar items gebaseerd op een van de verschillende voorhande criteria wordt eenvoudig gemaakt door de itemSearch() methode, zoals in het volgende voorbeeld: Uitvoeren van Amazon Item Zoekopdrachten itemSearch(array('SearchIndex' => 'Books', 'Keywords' => 'php')); foreach($response as $r) { echo $r->Title .'
'; } ?>]]>
De itemSearch() methode aanvaardt een enkele array array parameter om zoekopties af te handelen. Voor alle details, inclusief een lijst van beschikbare opties, zie de relevante Amazon documentatie De Zend_Service_Amazon_Query klasse is een gemakkelijk te gebruiken "wrapper" van deze methode.
De Alternatieve Query API gebruiken Inleiding Zend_Service_Amazon_Query bied een alternatieve API om de Amazon Web Service te gebruiken. De alternatieve API gebruikt het Fluent Interface ontwerppatroon. Dus, alle oproepen kunnen gemaakt worden door aaneengeregen methode-oproepen te maken. (bv: $obj->method()->method2($arg)) De Zend_Service_Amazon_Query API gebruikt overloading om gemakkelijk een item zoekopdracht op te zetten en laat je dan toe te zoeken op de gespecifieerde criteria. Elk van de opties is als een methode-oproep aangeboden, en elk argument van een methode komt overeen met de benoemde waarde van de optie: Doorzoek Amazon met gebruik van de Alternatieve Query API In dit voorbeeld wordt de alternatieve query API gebruikt als een Fluent Interface om opties en hun respectievelijke waarden te specificeren: Category('Books')->Keywords('PHP'); $results = $query->search(); foreach ($results as $result) { echo $result->Title .'
'; } ?>]]>
Dit zet de optie Category tot "Books" en Keywords tot "PHP". Voor meer informatie over de beschikbare opties verwijzen we je graag door naar de relevante Amazon documentatie.
Zend_Service_Amazon Klassen De volgende klassen worden allemaal teruggegeven door Zend_Service_Amazon::itemLookup() en Zend_Service_Amazon::itemSearch(): Zend_Service_Amazon_Item Zend_Service_Amazon_Image Zend_Service_Amazon_ResultSet Zend_Service_Amazon_OfferSet Zend_Service_Amazon_Offer Zend_Service_Amazon_SimilarProduct Zend_Service_Amazon_Accessories Zend_Service_Amazon_CustomerReview Zend_Service_Amazon_EditorialReview Zend_Service_Amazon_ListMania Zend_Service_Amazon_Item Zend_Service_Amazon_Item is de typeklasse die gebruikt wordt om een Amazon item voor te stellen dat werd teruggestuurd door de web service. Het omvat alle item eigenschappen, inclusief de titel, beschrijving, recensies enz... Zend_Service_Amazon_Item::asXML() string asXML Geeft de oorspronkelijke XML van het item terug Eigenschappen Zend_Service_Amazon_Item heeft een aantal eigenschappen die onmiddellijk verwant zijn aan hun Amazon API tegenhangers. Zend_Service_Amazon_Item Eigenschappen Naam Type Beschrijving ASIN string Amazon Item ID DetailPageURL string URL naar de pagina met de details voor het item SalesRank string Verkoopsrang van het item SmallImage Zend_Service_Amazon_Image Klein beeld van het item MediumImage Zend_Service_Amazon_Image Medium beeld van het item LargeImage Zend_Service_Amazon_Image Groot beeld van het item Subjects array Item onderwerpen Offers Zend_Service_Amazon_OfferSet Samenvatting van en aanbiedingen voor het item CustomerReviews array Klantrecensies voorgesteld als een array van Zend_Service_Amazon_CustomerReview objecten EditorialReviews array Uitgeversrecensies voorgesteld als een array van Zend_Service_Amazon_EditorialReview objecten SimilarProducts array Gelijksoortige producten voorgesteld als een array van Zend_Service_Amazon_SimilarProduct objecten Accessories array Accessoires voor het item voorgesteld als een array van Zend_Service_Amazon_Accessories objecten Tracks array Een array van liedjes, nummers en namen voor muziek CDs en DVDs ListmaniaLists array ListMania lijsten verwant met het item als een array van Zend_Service_Amazon_ListmainList objecten PromotionalTag string Item promotievlag
Terug naar de klasselijst
Zend_Service_Amazon_Image Zend_Service_Amazon_Image vetegenwoordigt een (remote) beeld voor een product. Eigenschappen Zend_Service_Amazon_Image Eigenschappen Naam Type Beschrijving Url Zend_Uri Remote URL voor het beeld Height int De hoogte van het beeld in pixels Width int De breedte van het beeld in pixels
Terug naar de klasselijst
Zend_Service_Amazon_ResultSet Zend_Service_Amazon_ResultSet objecten worden teruggestuurd door Zend_Service_Amazon::itemSearch() en laten je toe gemakkelijk meervoudige resultaten verwerken. Implementeert de SeekableIterator voor gemakkelijke iteratie (bijvoorbeeld door foreach te gebruiken) evenals onmiddellijke toegang tot een specifiek resultaat door seek() te gebruiken. Zend_Service_Amazon_ResultSet::totalResults() int totalResults Geeft het totaal aantal resultaten verkregen door de zoekopdracht Terug naar de klasselijst Zend_Service_Amazon_OfferSet Elk resultaat teruggegeven door Zend_Service_Amazon::itemSearch() en Zend_Service_Amazon::itemLookup() bevat een Zend_Service_Amazon_OfferSet object via welke prijsinformatie voor het item kan worden opgevraagd. Eigenschappen Zend_Service_Amazon_OfferSet Eigenschappen Naam Type Beschrijving LowestNewPrice int Laagste prijs voor het item in "Nieuw" conditie LowestNewPriceCurrency string De munteenheid voor LowestNewPrice LowestOldPrice int Laagste prijs voor het item in "Gebruikt" conditie LowestOldPriceCurrency string De munteenheid voor LowestOldPrice TotalNew int Totaal aantal beschikbare items in "nieuw" conditie TotalUsed int Totaal aantal beschikbare items in "gebruikt" conditie TotalCollectible int Totaal aantal beschikbare items in "verzamelaars" conditie TotalRefurbished int Totaal aantal beschikbare items in "gerenoveerd" conditie Offers array Een array van Zend_Service_Amazon_Offer objecten.
Terug naar de klasselijst
Zend_Service_Amazon_Offer Elke aanbieding voor een item is een Zend_Service_Amazon_Offer object. Zend_Service_Amazon_Offer Eigenschappen Eigenschappen Naam Type Beschrijving MerchantId string Handelaars Amazon ID GlancePage string URL voor een pagina met een samenvatting van de handelaar Condition string conditie van het item OfferListingId string ID van de aanbiedingslijst Price int Prijs van het item CurrencyCode string Munteenheid voor de prijs van het item Availability string Beschikbaarheid van het item IsEligibleForSuperSaverShipping boolean Of het item in aanmerking komt voor Super Saver Shipping of niet
Terug naar de klasselijst
Zend_Service_Amazon_SimilarProduct Wanneer je naar items zoekt geeft Amazon ook een lijst van gelijksoortige producten terug die de zoekende persoon zouden kunnen interesseren. Elk van deze items is een Zend_Service_Amazon_SimilarProduct object. Elk object bevat de informatie die je toelaat opeenvolgende verzoeken te maken om de volledige informatie van het item te verkrijgen. Eigenschappen Zend_Service_Amazon_SimilarProduct Eigenschappen Naam Type Beschrijving ASIN string Amazon Uniek ID voor het product (ASIN) Title string Titel van het product
Terug naar de klasselijst
Zend_Service_Amazon_Accessories Accessoires voor het teruggegeven item worden vertegenwoordigd door Zend_Service_Amazon_Accessories objecten Eigenschappen Zend_Service_Amazon_Accessories Eigenschappen Naam Type Beschrijving ASIN string Amazon Uniek ID voor het product (ASIN) Title string Titel van het product
Terug naar de klasselijst
Zend_Service_Amazon_CustomerReview Elke klantrecensie wordt teruggegeven als een Zend_Service_Amazon_CustomerReview object. Eigenschappen Zend_Service_Amazon_CustomerReview Eigenschappen Naam Type Beschrijving Rating string Item classificatie HelpfulVotes string Stemmen over hoe helpvol de recensie is CustomerId string Klant ID TotalVotes string Totaal aantal stemmen Date string Datum van de recensie Summary string Recensie samenvatting Content string Recensie inhoud
Terug naar de klasselijst
Zend_Service_Amazon_EditorialReview Elke uitgeversrecensie van een item is een Zend_Service_Amazon_EditorialReview object Eigenschappen Zend_Service_Amazon_EditorialReview Eigenschappen Naam Type Beschrijving Source string Bron van de uitgeversrecensie Content string Recensie inhoud
Terug naar de klasselijst
Zend_Service_Amazon_Listmania Elke ListMania resultaatlijst is een Zend_Service_Amazon_Listmania object. Eigenschappen Zend_Service_Amazon_Listmania Eigenschappen Naam Type Beschrijving ListId string Lijst ID ListNaam string Lijstnaam
Terug naar de klasselijst