【问题标题】:Laravel Class 'App\Http\Controllers\GuzzleHttp\Client' not found未找到 Laravel 类“App\Http\Controllers\GuzzleHttp\Client”
【发布时间】:2018-04-02 21:07:03
【问题描述】:
我已经安装了客户端并使用 composer dump autoload 进行了更新,但我仍然遇到同样的错误。通过 composer 安装后在项目目录下需要 guzzlehttp/guzzle:~6.0。
$client = new GuzzleHttp\Client();
为什么它不起作用,为什么它甚至引用了错误的目录?
【问题讨论】:
标签:
php
laravel
laravel-5
composer-php
guzzle
【解决方案1】:
你可能没有安装 guzzle。
运行composer require guzzlehttp/guzzle进行安装
【解决方案2】:
你会想要熟悉 PHP namespaces。
Laravel 中的大多数文件都是命名空间的。对命名空间内的函数的调用始于该命名空间内,但有两个例外:
如果您以\ 开头类名,则告诉 PHP 从根级命名空间开始:
$client = new \GuzzleHttp\Client();
或者,你可以说:
use GuzzleHttp\Client;
在文件的顶部(你会在 Laravel 的默认文件中看到 很多这些文件)然后执行
$client = new Client();