O'Reilly logo

Amazon Hacks by Paul Bausch

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Program AWS with PHP

Parsing XML with the built-in PHP XML parser can be tricky. But once you see how it’s done, you’ll be parsing Amazon XML in no time.

Using someone else’s wrapper functions to handle Amazon Web Services requests is a nice shortcut to building applications. But the time inevitably comes when you want to do something that existing wrappers don’t handle. You can either look under the hood and tinker with or add to someone else’s work, or you can build your own scripts from scratch.

The following bit of PHP might be a good start if you’re building something from the ground up. It uses PHP’s built-in XML parser to handle AWS responses, so there’s nothing new to install. PHP’s parser is James Clark’s expat, and you can find the documentation at http://www.php.net/xml.

Given an ASIN, this example requests the lite XML response and formats the results in an HTML table.

The Code

This code builds an AsinSearch Amazon request URL with the asin value passed in through the querystring, and retrieves the XML with the fopen( ) function.

PHP’s xml_parse_into_struct function turns the AWS response into two arrays—one with tag names ($index) and the other with values ($values). Looping through the array, the script then sets the value when it finds the XML tag it’s looking for. With the values set, it prints the HTML to the page with the values in place. Create a file called ASINsearch.php containing the following code:

<?php
// Set Local variables
$dev_token = "insert developer ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required