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

时间:2013-10-15 22:11:40

标签: php oop laravel laravel-4

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

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

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

然后我可以在我的控制器中实例化并按照我的意愿使用:$ga = new Google\Api\gapi(ga_email, ga_password);

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

1 个答案:

答案 0 :(得分:3)

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

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

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

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

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

composer update