在Laravel 4中放置第3方API的位置


Where to put a 3rd-party API in Laravel 4

我正在使用Google Analytics API为我的应用程序获取一些信息。这是一个PHP类,我可以实例化并用于从GA中提取数据。

我的第一个想法是把它放在一个新文件夹(app/lib)中,然后从作曲家自动加载它:

"autoload": {
    "classmap": [
        "app/lib/google/api"
    ]
}

然后,我可以在我的控制器中实例化并根据需要使用:$ga = new Google'Api'gapi(ga_email, ga_password);

但是,由于它是应用程序的数据访问层,因此我还尝试将其放入模型中并以这种方式实例化它。两者都有效,我只是试图遵循一些最佳实践。 或者我应该把它放在另一个地方,比如供应商文件夹。

就我个人而言,我希望它是由作曲家管理的vendor文件夹下的包。有很多人在Packagist上打包了GAPI库,为您节省了创建位置,自动加载,保持更新等工作。

https://packagist.org/search/?q=gapi

只需将要求添加到您的 composer.json 中:

"require": {
    "dandydev/gapi-php": "dev-master"
}

然后在该文件夹的命令行中运行

composer update