Laravel 5 如何将Packagist的软件包集成到Laravel 5中?

Laravel 5 如何将Packagist的软件包集成到Laravel 5中?,laravel-5,packagist,exacttarget,Laravel 5,Packagist,Exacttarget,我正在与laravel 5合作,并尝试集成以下软件包: exacttarget/fuel sdk php 我执行了我的项目: composer require exacttarget/fuel-sdk-php 因此,我对我的供应商和目标供应商进行了调查 我注意到的第一件事是这个特殊的包不使用名称空间,所以它仍然调用require指令,而不是“use\path\namespace” 这是正确的方法吗?我还没有见过很多软件包,但在我过去的经验中,我并不认为编写软件包的方法是正确的 在此之后,我编辑

我正在与laravel 5合作,并尝试集成以下软件包: exacttarget/fuel sdk php

我执行了我的项目:

composer require exacttarget/fuel-sdk-php
因此,我对我的供应商和目标供应商进行了调查

我注意到的第一件事是这个特殊的包不使用名称空间,所以它仍然调用require指令,而不是“use\path\namespace” 这是正确的方法吗?我还没有见过很多软件包,但在我过去的经验中,我并不认为编写软件包的方法是正确的

在此之后,我编辑condif/app.php以使用ET_客户机类

 'providers' => [
 ...
 'ET_Client',
 ...
],

一旦我这样做了,我就得到了一个错误:看起来Laravel frmwk试图实例化这个类,它需要一些参数才能工作,即使我还没有使用它(iStatiting)。这是拉威尔的正常行为吗


我遗漏了什么吗?

提供程序
数组用于注册服务提供程序类。除非
ET\u Client
扩展了Laravel的基本
ServiceProvider
类,否则它将无法工作

相反,在需要使用PHP类时,只需将
use
语句添加到PHP类中:


看看这个软件包,这不是FuelPHP框架的SDK,而不是Laravel吗?谢谢Martin,但是我应该在哪里向PackageGist检查一个软件包是为特定框架制作的?是不是只有通过分析代码你才能理解?我不知道ExtractTarget是什么。Fuel是他们产品的一个名称吗?他们将FuelSDK称为自己的一堆类,以便与REST服务交互。。。我不认为它可能与FuelpHPT有关,我想这是解决方案,但因为我有很多类。必须列出每个控制器中需要使用的所有类并不好。。。我希望我能给他们命名,然后打电话:使用我的名字空间…不幸的是,你要受第三方的摆布。如果他们还没有命名他们的SDK,那么你就无能为力了。也许联系他们,让他们说出你的名字?名称空间已经存在了很长一段时间,现在很常用。也许我会用名称空间重写它。只是你的另一个暗示。如果现在我使用名称空间重写所有内容。我不必从ServiceProvider继承,然后将其注册到config/app.php。我也可以简单地命名它,然后在控制器中使用名称空间。对吗?或者你认为从Laravel的风格来看,Serviceprovider的方式会更优雅吗?我不确定我是否会这样做?您所说的从
ServiceProvider
继承是什么意思?如果您正在编写一个Laravel服务提供商类,那么它需要扩展抽象类,是的。我有一个库“fuelSDK”,它基本上似乎不遵循PSR规则,也不是为了方便地集成到Laravel中而编写的。即使它在PackageGist上并且有composer.json文件。问题是。。。我有很多类一起工作,一个库,哪一个是将它集成到Laravel5中并自动加载或使用它的最佳方法?希望我明白了。谢谢