问题
I've installed the client and I did an update using composer dump autoload but I still end up with the same error. After installing via composer require guzzlehttp/guzzle:~6.0 in the projects directory.
$client = new GuzzleHttp\Client();
Why isn' it working and why is it even referencing the wrong directory?
回答1:
You're going to want to get acquainted with PHP namespaces.
Most files in Laravel are namespaced. Calls to functions within a namespace start within that namespace, with two exceptions:
If you start the class name with a \
, that tells PHP to start at the root-level namespace:
$client = new \GuzzleHttp\Client();
Or, you can put:
use GuzzleHttp\Client;
at the top of the file (you'll see a lot of these already throughout Laravel's default files) and then do
$client = new Client();
回答2:
You might have not installed guzzle.
Run composer require guzzlehttp/guzzle
to install it
来源:https://stackoverflow.com/questions/46870356/laravel-class-app-http-controllers-guzzlehttp-client-not-found