Класс 'GuzzleHttp \ Client' не найден - локальные зависимости - PullRequest
0 голосов
/ 18 ноября 2018

Я пишу библиотеку, которая использует GuzzleHttp.Библиотека находится внутри пакета композитора:

composer.json

"require": {
    // ...

    "adz/test": "^1.0@dev",

    // ...
}

. / Vendor / adz / test / composer.json

 "require": {
     "php": "~5.6|~7.0",
     "guzzlehttp/guzzle": "^6.3"
 },

контроллер библиотеки

namespace adz\test;

use GuzzleHttp\Client;

class User
{
    static $client;

    public function __construct()
    {
        self::$client = new \GuzzleHttp\Client();
    }

    public static function getAll()
    {
        $res = self::$client->request('GET', 'https://jsonplaceholder.typicode.com/users');
        return $res->getBody();
     }
}

фронт-контроллер

use adz\test\User;

class UserController extends Controller
{
    var $user, $allUsers;

    public function __construct()
    {
        $this->user = new User();
    }

    public function getAll()
    {
        $allUsers = $this->user::getAll();
        echo $allUsers;
    }
}

Во время выполнения приложение сообщает:

Класс 'GuzzleHttp \ Client' не найден.

Если я

composer require guzzlehttp/guzzle

на моем фронте composer.json, то Guzzleработает отлично.Но я не хочу загружать Guzzle в свой фронт composer.json.

Я только хочу загрузить Guzzle в мою библиотеку composer.json файл.

Что мне делать?

Редактировать: (./vendor/adz/test/composer.json) - полная версия;

{
 "name": "adz/test",
 "type": "library",
 "description": "desc",
 "keywords": [
    "adz",
    "test"
 ],
 "homepage": "https://github.com/adz/test",
 "license": "MIT",
 "authors": [
    {
        "name": "Andy",
        "email": "andy@gmail.com",
        "homepage": "https://github.com/1cookie",
        "role": "Developer"
    }
 ],
 "require": {
    "php": "~5.6|~7.0",
    "guzzlehttp/guzzle": "^6.3"
 },
 "require-dev": {
    "phpunit/phpunit" : ">=5.4.3",
    "squizlabs/php_codesniffer": "^3.0"
 },
 "autoload": {
    "psr-4": {
        "adz\\test\\": "src"
    }
 },
 "autoload-dev": {
    "psr-4": {
        "adz\\test\\": "tests"
    }
 },
 "scripts": {
    "test": "phpunit",
    "check-style": "phpcs src tests",
    "fix-style": "phpcbf src tests"
 },
 "extra": {
    "branch-alias": {
        "dev-master": "1.0-dev"
    }
 },
 "config": {
    "sort-packages": true
 }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...