Laravel 5.4 Class' GuzzleHttp \ Client'在TransportManager.php中找不到(第185行)

时间:2017-12-18 10:07:43

标签: php email laravel-5 sparkpost

首先让我解释一下我想要实现的目标 1.用户提交请求会员资格的表格,应用程序向用户发送邮件以确认用户的请求 2.管理员批准或拒绝请求,应用程序向用户发送邮件通知他们

使用mailtrap,我已经能够在本地完成这项工作。转向生产,我已按照sending mail with sparkpost tutorial中的步骤切换到使用Sparkpost 但我一直收到错误

  

Class' GuzzleHttp \ Client'在TransportManager.php(第185行)中找不到

运行composer后我可以看到供应商文件夹中的guzzle文件夹需要guzzlehttp / guzzle

"require": {
    "php": ">=5.6.4",
    "guzzlehttp/guzzle": "^6.3",
    "laravel/framework": "5.4.*",
    "laravel/tinker": "~1.0"
},

我只是不明白为什么我会收到此错误或如何解决此问题。需要帮助解决此问题

2 个答案:

答案 0 :(得分:0)

您可能希望确保首先包含require './vendor/autoload.php(默认情况下应该是Laravel中的情况)。

如果已经包含autoload.php但您仍然收到此错误,那么根据此提交的错误 - https://github.com/SparkPost/php-sparkpost/issues/37,您需要手动运行

php composer.phar require guzzlehttp/guzzle

答案 1 :(得分:0)

最后通过执行以下操作使我的代码工作

最初我运行composer require guzzlehttp/guzzle添加guzzlehttp / guzzle以获取composer.json文件的部分

其次,我跑了composer update

最后,我将文件从本地服务器上传到生产服务器。然后我将use GuzzleHttp\Client添加到我的邮件控制器中,一切运行良好。

我认为我之前缺少的是在要求guzzlehttp / guzzle之后没有运行作曲家更新