【问题标题】:Using Zend Service Amazon使用 Zend 服务亚马逊
【发布时间】:2012-06-10 04:15:04
【问题描述】:

最初,我正在寻找如何使用 php 从亚马逊检索书籍信息。我发现了这个问题:

How can I use Amazon's API in PHP to search for books?

我认为这可行,但我有一个愚蠢的问题。我无法安装和使用Zend Service Amazon。我下载了大约 60 MB 的软件,但已损坏。

可能是,我实际上想要一些 php 文件来实现它。但是,它提供了某种 exe 文件。

所以,我的问题是;

我在哪里下载 Zend 框架? 我该如何安装它? 如何使用它?

提前致谢

【问题讨论】:

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


    【解决方案1】:

    Zend Framework 的官方下载地址为here。由于您打算将 ZF 用作库而不是 MVC 应用程序框架,因此您只需要下载更小的最小包。

    通过查看您感兴趣的 Amazon 文件,我认为以下文件列表是您需要复制到您的应用程序中才能使用 Zend Framework Amazon 服务 API(当我使用 ZF 时)作为一个库,我总是尽量只包含我将使用的实际文件,而不是整个包,但对于初学者来说,你可以复制整个 Zend 文件夹来开始):

    Zend/Exception.php
    
    Zend/Loader.php
    Zend/Loader/Autoloader.php
    Zend/Loader/Exception.php
    
    Zend/Uri.php
    Zend/Uri/Exception.php
    
    Zend/Service/Abstract.php
    Zend/Service/Amazon.php
    Zend/Service/Exception.php
    
    Zend/Service/Amazon/Abstract.php
    Zend/Service/Amazon/Accessories.php
    Zend/Service/Amazon/Authentication.php
    Zend/Service/Amazon/CustomerReview.php
    Zend/Service/Amazon/EditorialReview.php
    Zend/Service/Amazon/Image.php
    Zend/Service/Amazon/Item.php
    Zend/Service/Amazon/ListmaniaList.php
    Zend/Service/Amazon/Offer.php
    Zend/Service/Amazon/OfferSet.php
    Zend/Service/Amazon/Query.php
    Zend/Service/Amazon/ResultSet.php
    Zend/Service/Amazon/SimilarProduct.php
    
    Zend/Rest/Client.php
    Zend/Rest/Client/Result.php
    Zend/Rest/Client/Result/Exception.php
    
    Zend/Crypt.php
    Zend/Crypt/Exception.php
    Zend/Crypt/Hmac.php
    Zend/Crypt/Hmac/Exception.php
    

    如果我错过了,请原谅我;如果我遗漏了任何一个,你应该会得到一个异常class not found,这应该很容易解决你需要包含哪些额外的文件。

    为了使用 Zend 框架,我建议执行以下操作:

    首先,将 Zend Framework 的文件添加到您的 PHP 包含路径。为了使用 ZF 文件,您需要保留它们使用的目录结构,至少,您需要一个包含所有 ZF 文件的 Zend 文件夹。

    像这样添加到您的包含路径:

    set_include_path(get_include_path() . PATH_SEPARATOR . '/zf/folder/path');
    

    zf/folder/path 应该是Zend 目录所在文件夹的路径,但请确保在包含路径中实际上不包含Zend 文件夹(因为Zend 包含require_once 'Zend/File.php';

    其次,如果可能,设置自动加载器。如果您决定使用 Zend Framework 自动加载器,则不必手动“require_once”许多 ZF 文件。

    要设置他们的自动加载器,您所要做的就是获取它的一个实例:

    require_once 'Zend/Loader/Autoloader.php';
    $autoloader = Zend_Loader_Autoloader::getInstance();
    

    您无需保存或使用$autoloader 执行任何操作。仅仅这个调用就足以注册 Zend 自动加载器。由于 ZF 文件在您的路径中,它会自动知道如何加载和定位所有 ZF 文件。

    执行这些步骤后,您可以在 PHP 应用程序中通过 Zend Framework 使用 Amazon 服务。

    至于使用它的细节,希望你能在这里找到所有细节和帮助,Zend_Service_Amazon Reference Guide。参考指南应该是您最好的选择,但您始终可以找到 phpDocumentor 类文档here

    希望对您有所帮助!如果您需要澄清任何事情,请随时询问。

    【讨论】:

    • 我想知道您是否可以为新的 zend 版本更新您的答案?它似乎不适用于 Zend 2.0。请看stackoverflow.com/questions/12964921/…
    • @emkay 即将推出新问题的答案。
    • @drew010 一直遵循您的指南并取得了很大的成功。关于如何加载项目图像及其详细信息的任何想法?
    猜你喜欢
    • 1970-01-01
    • 2011-12-29
    • 2012-10-09
    • 1970-01-01
    • 2016-01-06
    • 2015-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多