How to get product stock of amazon product using AWS api in php?

Viewed 1986

I have used following code for getting amazon product data and all products are getting in xml but product stock is not there in xml content.

Can anyone guide me for how to get product stock information.

<?php 
define('AWS_ACCESS_KEY_ID', 'my-access-key'); 
define('AWS_SECRET_ACCESS_KEY', 'my-secret-key'); 
define('AMAZON_ASSOC_TAG', 'my-associate-tag'); 

function amazon_get_signed_url($searchTerm) 
{ 
    $base_url = "http://ecs.amazonaws.com/onca/xml"; 
    $params = array( 'AWSAccessKeyId' => AWS_ACCESS_KEY_ID, 'AssociateTag' => AMAZON_ASSOC_TAG, 'Version' => "2010-11-01", 'Operation' => "ItemLookup", 'Service' => "AWSECommerceService",  'ResponseGroup' => "ItemAttributes", 'ItemId'=> $searchTerm);

if(empty($params['AssociateTag'])) 
{ 
 unset($params['AssociateTag']); 
} 

// Add the Timestamp 
$params['Timestamp'] = gmdate("Y-m-d\TH:i:s.\\0\\0\\0\\Z", time()); 

// Sort the URL parameters 
$url_parts = array(); 
foreach(array_keys($params) as $key) 
$url_parts[] = $key . "=" . str_replace('%7E', '~', rawurlencode($params[$key])); 
sort($url_parts); 
// Construct the string to sign 
$url_string = implode("&", $url_parts); 
$string_to_sign = "GET\necs.amazonaws.com\n/onca/xml\n" . $url_string; 
// Sign the request 
$signature = hash_hmac("sha256", $string_to_sign, AWS_SECRET_ACCESS_KEY, TRUE);
 // Base64 encode the signature and make it URL safe 
 $signature = urlencode(base64_encode($signature)); 
 $url = $base_url . '?' . $url_string . "&Signature=" . $signature; 
 return ($url); 
}

$getthis = 'B004XIE6WI'; /*---- Product ASIN-----*/
$show = amazon_get_signed_url($getthis);

$ch = curl_init($show); 
curl_setopt($ch, CURLOPT_HEADER, false); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_TIMEOUT, 15); 
$c = curl_exec($ch); 
$xml = simplexml_load_string($c);
$json = json_encode($xml); 
$array = json_decode($json,TRUE);
echo "<pre>";
print_r($array);
echo "</pre>";
?>

1 Answers
Related