通过PHP Amazon Zend Service检索产品图片

时间:2013-07-15 11:39:47

标签: php zend-framework amazon-web-services amazon

我已经从GitHub安装了Amazon Zend库,可以使用以下方法访问项目信息:

    <?php
        require_once './Zend/Loader/StandardAutoloader.php';

        $autoloader = new Zend\Loader\StandardAutoloader(array(
            'namespaces' => array(
                'Zend'        => dirname(__FILE__) . '/Zend',
                'ZendRest'    => dirname(__FILE__) . '/ZendRest',
                'ZendService' => dirname(__FILE__) . '/ZendService',
             ),
             'fallback_autoloader' => true));

        $autoloader->register();

        $tag       = 'omitted';
        $appId     = 'omitted';
        $secretKey = 'omitted';

        $query = new ZendService\Amazon\Query($appId, 'UK', $secretKey);
        $query->Category('Electronics')->Keywords('nVidia')->AssociateTag($tag);
        $result = $query->search();
        foreach($result as $item)
        {
    ?>
            <div class="item">
              <a href="<?php echo $item->DetailPageURL ?>" target="_blank"><?php echo $item->Title ?></a>
            </div>
    <?php
        }
    ?>

按预期产生与产品的描述性链接。

我试图在链接旁边显示每个产品的图像,我想知道是否有人有这样做的经验。当我print_r($item)时,我看到了这一点:

[SmallImage] => 
[MediumImage] => 
[LargeImage] => 

以及所有其他信息(缩短以便于阅读)。看起来这些元素是空的,但在产品链接上实际上存在产品的图片。这适用于我搜索的每个产品。我需要设置一个参数来返回图片吗?

还有一个名为ZendService\Amazon\Image的类,我不知道该如何使用 - 文档是适用的。我需要调用它来返回图像吗?如果是这样,如何以及在哪里?

1 个答案:

答案 0 :(得分:1)

默认情况下,Amazon API不会在响应中包含图像数据。您可以使用ResponseGroup参数指定每个结果所需的信息。使用itemSearch语法的docs include an example of this,我不完全确定如何使用查询方法使用它,但希望这会指向正确的方向。